欢迎光临
我们一直在努力

ORACLE数据库中如何插入生僻字


本文转自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

㼆 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)

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。