十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
本文转自oracle官方博客, 很多客户的数据库的字符集是ZHS16GBK ,但是有些特殊的生僻字在这个字符集里并不包括,下面就以䶮㼆为例,说明如何把这2个字符插入到数据库。
成都创新互联主营镇安网站建设的网络公司,主营网站建设方案,重庆APP开发公司,镇安h5小程序设计搭建,镇安网站营销推广欢迎镇安等地区企业咨询
1.说明:
数据库的nls_characterset是ZHS16GBK, NLS_NCHAR_CHARACTERSET是AL16UTF16.
插入数据使用的工具是sqldeveloper,对应的版本是4.2.0.17.089
2.查询这2个字的Unicode编码
互联网上有很多Unicode相关的网站,通过相关网站可以查找到这2个字对应的Unicode编码:
䶮 Unicode编码:4DAE
㼆 Unicode编码: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)