关闭

Oracle NLS_CHARACTERSET NLS_NCHAR_CHARACTERSET 的区别

710人阅读 评论(0) 收藏 举报
分类:

SQL> conn / as sysdba
Connected.
SQL> SELECT parameter, value FROM v$nls_parameters WHERE parameter LIKE '%CHARACTERSET';


PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_CHARACTERSET
AL32UTF8


NLS_NCHAR_CHARACTERSET
AL16UTF16


问题描述:

NLS_CHARACTERSET是数据库字符集

NLS_NCHAR_CHARACTERSET是国家字符集


ORACLE中有两大类字符型数据,VARCHAR2是按照数据库字符集来存储数据。而NVARCHAR2是按照国家字符集存储数据的。同样,CHAR和NCHAR也一样,一是数据库字符符,一是国家字符集。字符集不同,二进制码的组合就不同。比如有一串二进制信息:1101,0110,1101,0000,1011,1001,1111,1010,按照16位双字节GBK字符集理解,可以代表“中国”两个字。如果单字节的字符集,这一串二进制代表ASC码为214、208、185、250的四个怪字符。
这就是字符集的作用,就是以什么样的形式理解信息。



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:564359次
    • 积分:6891
    • 等级:
    • 排名:第3463名
    • 原创:135篇
    • 转载:198篇
    • 译文:0篇
    • 评论:27条
    最新评论