Oracle储存生僻字
1、查看Oracle server端字符集
SQL> select userenv('language') from dual;
USERENV('LANGUAGE')
_________________________
AMERICAN_AMERICA.ZHS16GBK
2、把生僻字转换为Unicode
转换地址:http://www.bejson.com/convert/unicode_chinese/
例如:“㼆”这个字的Unicode为\u3f06,\u为转义字符
3、数据库测试
建立test表
create table test(tname nvarchar2(20));
查看unicode的生僻字如下:
SYS@oradb> select utl_raw.cast_to_nvarchar2('3f06') from dual;
UTL_RAW.CAST_TO_NVARCHAR2('3F06')
_________________________________
㼆
插入至test表中:
SYS@oradb> insert into test values((select utl_raw.cast_to_nvarchar2('3f06') from dual));
已创建 1 行。
SYS@oradb> select * from test01;
tname
____
㼆
由此可见,oracle 11g字符集为gbk,通过转换为Unicode后,再插入,可以显示生僻字“㼆”。