本文转自oracle官方博客,
很多客户的数据库的字符集是ZHS16GBK ,但是有些特殊的生僻字在这个字符集里并不包括,下面就以䶮㼆为例,说明如何把这2个字符插入到数据库。
1.说明:
数据库的nls_characterset是ZHS16GBK, NLS_NCHAR_CHARACTERSET是AL16UTF16.
插入数据使用的工具是sqldeveloper,对应的版本是4.2.0.17.089
2.查询这2个字的Unicode编码
互联网上有很多Unicode相关的网站,通过相关网站可以查找到这2个字对应的Unicode编码:
䶮 Unicode编码:4DAE
㼆 Un免费云主机域名icode编码:3F06
3.创建测试表
create table test(name nvarchar2(30));
4.插入数据
SQL>insert into test values(N’䶮㼆’);
–必须加字母”N”作为前缀,否则插入的数据依然乱码!
SQL>commit;
5.验证数据
SQL> select name,dump(name,1016) b from test;
NAME B
———- —————————————————–
䶮㼆 Typ=1 Len=4 CharacterSet=AL16UTF16: 4d,ae,3f,6
䶮㼆这2个字已经成功的插入表中并能正确显示,对应的Unicode编码是4d,ae,3f,6,跟第一步查询的结果是一致的。
相关参考:
The National Character Set ( NLS_NCHAR_CHARACTERSET ) in Oracle 9i, 10g , 11g and 12c (Doc ID 276914.1)
Oracle日常问题处理 ORA-04031 环境: DB:Oracle 11.2.0.1.0 OS:Windows Server 2008 问题现象: 数据库经常宕机,重启后没过几天又出现问题。 问题原因: 查看问题期间告警日志可知是由ORA-04031 报…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。