Oracle客户端 NLS_LANG 的设置方法

oracle客户端nls_lang设置

oraclewindowsmicrosoftunixbash

1. nls_lang 参数组成

nls_lang参数由以下部分组成:

nls_lang=<language>_<territory>.<clients characterset>

nls_lang各部分含义如下:

language指定:

-oracle消息使用的语言

-日期中月份和日显示

territory指定

-货币和数字格式

-地区和计算星期及日期的习惯

characterset:

-控制客户端应用程序使用的字符集

通常设置或者等于客户端(如windows)代码页

或者对于unicode应用设置为utf8

在windows上查看当前系统的代码页可以使用chcp命令:

e:\>chcp

活动的代码页: 936

代码页936也就是中文字符集 gbk,在microsoft的官方站点上,我们可以遭到关于936代码页的具体编码规则,请参考以下链接:

2. 查看 nls_lang 的方法

windows使用:

echo %nls_lang%

如:

e:\>echo %nls_lang%

american_america.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时系统编号。

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

select * from v$nls_parameters;



select * from nls_database_parameters



select userenv(‘language’) from dual;

4. 查看数据库可用字符集参数设置

select * from v$nls_valid_values;

5. 客户端 nls_lang 的设置方法


windows:
# 常用中文字符集

set nls_lang=simplified chinese_china.zhs16gbk

# 常用unicode字符集

set nls_lang=american_america.al32utf8

可以通过修改注册表键值永久设置

hkey_local_machine\software\oracle\homexx\nls_lang

unix:
# 常用unicode字符集

export nls_lang=american_america.al32utf8

# 常用中文字符集

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

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐