Trafodion 查看当前数据库的字符集

今天一位同事问及:如何在Trafodion中查看当前数据库的字符集?我四下一想,居然没想出怎样回答,尴尬。。

说实话,之前的概念一直就是Trafodion默认的字符集是ISO88591,这种字符集默认是会中文乱码的,如果希望支持中文,需要设置cqd traf_default_col_charset ‘utf8’; 或者直接在”MD“.defaults表中插入此cqd从而修改数据库级别的字符集。

后来在社区中提问得到解答才突然反应过来,前面这个cqd的当前值不就是代表数据库的默认字符集嘛,于是想到可以使用showcontrol default来查看cqd的值。

>>showcontrol default TRAF_DEFAULT_COL_CHARSET;

No CONTROL QUERY DEFAULT TRAF_DEFAULT_COL_CHARSET settings are in effect.

No externalized DEFAULTS attribute TRAF_DEFAULT_COL_CHARSET exists.

--- SQL operation complete.

然后提示信息说没有找到这个cqd,这是因为这个cqd并没有在当前session中设置,所以默认不可见,如果想查看,需要把另外一个cqd showcontrol_show_all打开才可查看。

>>cqd showcontrol_show_all 'on';

--- SQL operation complete.
>>showcontrol default TRAF_DEFAULT_COL_CHARSET;

No CONTROL QUERY DEFAULT TRAF_DEFAULT_COL_CHARSET settings are in effect.

Current DEFAULTS
  TRAF_DEFAULT_COL_CHARSET              ISO88591

现在我们再尝试把UTF8设置为数据库级别的字符集,执行以下命令并重启DCS。

>>insert into "_MD_".defaults values('TRAF_DEFAULT_COL_CHARSET','UTF8','',1);

--- 1 row(s) inserted.

再次查看字符集,通过以下结果得知,默认字符集已经变成UTF8了。

>>cqd showcontrol_show_all 'on';  

--- SQL operation complete.
>>showcontrol default TRAF_DEFAULT_COL_CHARSET;

No CONTROL QUERY DEFAULT TRAF_DEFAULT_COL_CHARSET settings are in effect.

Current DEFAULTS
  TRAF_DEFAULT_COL_CHARSET              UTF8

--- SQL operation complete.

猜你喜欢

转载自blog.csdn.net/post_yuan/article/details/80260932