当前位置:K88软件开发文章中心电脑基础基础应用05 → 文章内容

比较LANG和NLS_LANG在Linux中的作用

减小字体 增大字体 作者:华军  来源:华军资讯  发布时间:2019-1-31 15:48:11

       下面就是Linux环境变量LANG和NLS_LANG的区别介绍了,LANG主要影响的是Linux系统,NLS_LANG则是对oracle有效,对于非英语的字符集,NLS_LANG的设置非常重要。  LANG是针对Linux系统的语言、地区、字符集的设置,对linux下的应用程序有效,如date;NLS_LANG是针对Oracle语言、地区、字符集的设置,对oracle中的工具有效  例如:  代码如下:  export LANG=zh_CN.GB2312  export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  $export LANG=zh_CN.GB2312  $date  2012年 11月 27日 星期二 16:20:35 CST  显示是中文界面。  代码如下:  $export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK  $sqlplus / as sysdba  SQL*Plus: Release 10.2.0.4.0 - Production on Tue Nov 27 16:19:03 2012  Copyright (c) 1982, 2007, Oracle. All Rights Reserved.  Connected to:  Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production  With the Partitioning, Real Application Clusters, OLAP, Data Mining  and Real Application Testing options  SQL》 select sysdate from dual;  SYSDATE  ------------  27-NOV-12  显示的是英文环境,但只对ORACLE程序生效。  Linux系统中关于环境变量的LANG设置主要有下列项目:  代码如下:  [root@blliu tmp]# locale  LANG=zh_CN.gb2312  LC_CTYPE=“zh_CN.gb2312”  LC_NUMERIC=“zh_CN.gb2312”  LC_TIME=“zh_CN.gb2312”  LC_COLLATE=“zh_CN.gb2312”  LC_MONETARY=“zh_CN.gb2312”  LC_MESSAGES=“zh_CN.gb2312”  LC_PAPER=“zh_CN.gb2312”  LC_NAME=“zh_CN.gb2312”  LC_ADDRESS=“zh_CN.gb2312”  LC_TELEPHONE=“zh_CN.gb2312”  LC_MEASUREMENT=“zh_CN.gb2312”  LC_IDENTIFICATION=“zh_CN.gb2312”  LC_ALL=  这里LC_ALL没有设置,如果它设置了,上面所有的设置都无效的,系统会读取LC_ALL。  locale -a 查看本地字符集  locale -m 查看所有支持的字符集  在Oracle数据库中查NLS_LANG设置:  代码如下:  SQL》 SELECT *  2 FROM DATABASE_PROPERTIES  3 WHERE PROPERTY_NAME IN  4 (‘NLS_LANGUAGE’, ‘NLS_TERRITORY’, ‘NLS_CHARACTERSET’);  PROPERTY_NAME PROPERTY_VALUE DESCRIPTION  ------------------------------ ------------------------------ --------------------  NLS_LANGUAGE AMERICAN Language  NLS_TERRITORY AMERICA Territory  

比较LANG和NLS_LANG在Linux中的作用