此日语字符(具有四个字节)在Oracle数据库中保存为
????
,而其他日语字符则正确保存。
我的rails应用程序的boot.rb
中的配置包含:
ENV['NLS_LANG'] = 'AMERICAN_AMERICA.UTF8'
oracle db的和sqldeveloper
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CHARACTERSET JA16SJISTILDE
列的数据类型为NVARCHAR2
。
答案 0 :(得分:2)
尝试NLS_LANG=AMERICAN_AMERICA.AL32UTF8
Oracle字符集UTF8
实际上是CESU-8而AL32UTF8
通常是 UTF-8
如果您留在Basic Multilingual Plane (BMP),那么UTF8
和AL32UTF8
相同,但是如果您的字符数超过U+FFFF
,那么它们会有所不同。
是U+20BB7
,这是补充表意平面