NLS:Oracle的全球化支持之旅(nls oracle)

全球化(Internationalization,缩写为I18N)是世界上许多应用系统开发过程中常见的一个任务,ORACLE也提供了精心设计的National Language Support(NLS)特性来支持全球化的应用系统的开发。

NLS的核心可以归结为控制多语言数据库初始化配置以及java语言环境。它支持多国语言的访问,NLS支持的外部字符集有希伯来语,阿拉伯语,希腊语,中文,日文等。

在oracle中,NLS系统参数控制系统和客户端上下文使用哪种语言,以及每个语言本地所使用的语言环境,比如编码方式,日期,数字和货币格式,时区,以及排序规则。

NLS 系统参数的配置是具体应用系统开发的基础,可以用下面的代码来进行配置:

ALTER DATABASE

NLS_CHARACTERSET AL32UTF8

NLS_LANGUAGE SIMPLIFIED CHINESE

NLS_TERRITORY CHINA

NLS_DATE_FORMAT ‘YYYY-MM-DD’

NLS_TIMESTAMP_FORMAT ‘YYYY-MM-DD HH24:MI:SS’;

上面的代码设置了字符集为AL32UTF8,语言为“简体中文”,领域为“中国”,日期格式为“YYYY-MM-DD”,时间戳格式为“YYYY-MM-DD HH24: MI: SS”。

要使用NLS特性,Java 程序必须启动时设置 Oracle 的用户特定语言环境,例如下面的代码:

String MY_NLS_LANG= “SIMPLIFIED CHINESE_CHINA.AL32UTF8”;

System.setProperty(“oracle.jdbc.defaultNlsLang”, MY_NLS_LANG);

执行这段代码后,NLS 框架就可以将 Java 运行时上下文中的字符转换成 Oracle 可接受的字符。

正确配置 NLS 以及使用兼容的系统和客户端语言环境,将为开发的 Java 应用提供全球化支持。NLS 特性使 Java 应用能够正确处理不同语言的数据,可以被全球各地不同文化群体所接受,为用户提供更好的体验。