ORACLE資料庫中如何插入生僻字

巡完南山巡南山發表於2019-06-06

本文轉自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)

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26964624/viewspace-2646975/,如需轉載,請註明出處,否則將追究法律責任。

相關文章