美文网首页Oracle
NLS_LANG设置

NLS_LANG设置

作者: JowellChow | 来源:发表于2016-08-31 10:39 被阅读514次

    NLS_LANG 参数组成

    NLS_LANG参数由以下部分组成
    NLS_LANG=<Language><Territory>.<Clients Characterset>
    NLS_LANG各部分含义定义如下:
    Language指定:

    1. Oracle消息使用的语言
    2. 日期中月份和日显示
      Territory指定:
    3. 货币和数字格式
    4. 地区和计算星期及日期的习惯
      Characterset控制客户端应用程序使用的字符集
      通常设置或者等于客户端(如windows)代码页
      在Windows上查看当前系统的代码页可以使用chcp命令:
    C:\Users\Jowell>chcp
    
    代码页 国家(地区)或语言
    437 美国
    708 阿拉伯文(ASMO 708)
    720 阿拉伯文(DOS)
    850 多语言(拉丁文 I)
    852 中欧(DOS) - 斯拉夫语(拉丁文 II)
    855 西里尔文(俄语)
    857 土耳其语
    860 葡萄牙语
    861 冰岛语
    862 希伯来文(DOS)
    863 加拿大 - 法语
    865 日耳曼语
    866 俄语 - 西里尔文(DOS)
    869 现代希腊语
    874 泰文(Windows)
    932 日文(Shift-JIS)
    936 中国 - 简体中文(GB2312)
    949 韩文
    950 繁体中文(Big5)
    1200 Unicode
    1201 Unicode (Big-Endian)
    1250 中欧(Windows)
    1251 西里尔文(Windows)
    1252 西欧(Windows)
    1253 希腊文(Windows)
    1254 土耳其文(Windows)
    1255 希伯来文(Windows)
    1256 阿拉伯文(Windows)
    1257 波罗的海文(Windows)
    1258 越南文(Windows)
    20866 西里尔文(KOI8-R)
    21866 西里尔文(KOI8-U)
    28592 中欧(ISO)
    28593 拉丁文 3 (ISO)
    28594 波罗的海文(ISO)
    28595 西里尔文(ISO)
    28596 阿拉伯文(ISO)
    28597 希腊文(ISO)
    28598 希伯来文(ISO-Visual)
    38598 希伯来文(ISO-Logical)
    50000 用户定义的
    50001 自动选择
    50220 日文(JIS)
    50221 日文(JIS-允许一个字节的片假名)
    50222 日文(JIS-允许一个字节的片假名 - SO/SI)
    50225 韩文(ISO)
    50932 日文(自动选择)
    50949 韩文(自动选择)
    51932 日文(EUC)
    51949 韩文(EUC)
    52936 简体中文(HZ)
    65000 Unicode (UTF-7)
    65001 Unicode (UTF-8)

    下表列出了所有支持的代码页及其国家(地区)或者语言:

    代码页 国家(地区)或语言
    437 美国
    708 阿拉伯文(ASMO 708)
    720 阿拉伯文(DOS)
    850 多语言(拉丁文 I)
    852 中欧(DOS) - 斯拉夫语(拉丁文 II)
    855 西里尔文(俄语)
    857 土耳其语
    860 葡萄牙语
    861 冰岛语
    862 希伯来文(DOS)
    863 加拿大 - 法语
    865 日耳曼语
    866 俄语 - 西里尔文(DOS)
    869 现代希腊语
    874 泰文(Windows)
    932 日文(Shift-JIS)
    936 中国 - 简体中文(GB2312)
    949 韩文
    950 繁体中文(Big5)
    1200 Unicode
    1201 Unicode (Big-Endian)
    1250 中欧(Windows)
    1251 西里尔文(Windows)
    1252 西欧(Windows)
    1253 希腊文(Windows)
    1254 土耳其文(Windows)
    1255 希伯来文(Windows)
    1256 阿拉伯文(Windows)
    1257 波罗的海文(Windows)
    1258 越南文(Windows)
    20866 西里尔文(KOI8-R)
    21866 西里尔文(KOI8-U)
    28592 中欧(ISO)
    28593 拉丁文 3 (ISO)
    28594 波罗的海文(ISO)
    28595 西里尔文(ISO)
    28596 阿拉伯文(ISO)
    28597 希腊文(ISO)
    28598 希伯来文(ISO-Visual)
    38598 希伯来文(ISO-Logical)
    50000 用户定义的
    50001 自动选择
    50220 日文(JIS)
    50221 日文(JIS-允许一个字节的片假名)
    50222 日文(JIS-允许一个字节的片假名 - SO/SI)
    50225 韩文(ISO)
    50932 日文(自动选择)
    50949 韩文(自动选择)
    51932 日文(EUC)
    51949 韩文(EUC)
    52936 简体中文(HZ)
    65000 Unicode (UTF-7)
    65001 Unicode (UTF-8)

    所以chap 936可以设置简体中文

    查看NLS_LANG的方法

    • Windows使用
    echo %NLS_LANG%
    

    比如我本机返回SIMPLIFIED CHINESE_CHINA.ZHS16GBK

    • Unix使用
    env|grep NLS_LANG
    

    比如:
    /opt/oracle>env|grep NLS_LANG
    NLS_LANG=AMERICAN_CHINA.ZHS16GBK

    Windows客户端设置,可以在注册表中更改NLS_LANG,具体键值位于:
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\
    xx指存在多个ORACLE_HOME时系统编号

    查看数据库服务器字符集

    select * from nls_database_parameters; --其来源于props$, 是表示数据库的字符集
    

    查看数据库客户端字符集环境

    select * from nls_instance_parameters; --其来源于v$parameter,
    

    查看数据库会话字符集环境

    --其来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameters一致。
    select * from nls_session_parameters;
    

    查看数据库当前字符集参数设置

    SELECT * FROM v$nls_parameters; 
    

    客户端 NLS_LANG 的设置方法

    • Windows:
    1. 常用中文字符集
    set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK 
    
    1. 常用unicode字符集
    set NLS_LANG=american_america.AL32UTF8 
    

    可以通过修改注册表键值永久设置
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG

    • Unix:
    1. 常用unicode字符集
    export NLS_LANG=american_america.AL32UTF8 
    
    1. 常用中文字符集
    export NLS_LANG="Simplified Chinese_china".ZHS16GBK 
    

    可以编辑 bash_profile 文件进行永久设置
    vi .bash_profile
    NLS_LANG="Simplified Chinese_china".ZHS16GBK export NLS_LANG
    使 bash_profile 设置生效
    source .bash_profile

    相关文章

      网友评论

        本文标题:NLS_LANG设置

        本文链接:https://www.haomeiwen.com/subject/rjpqettx.html