[-]

关于NLS_LANG参数

NSL_LANG常用的值

在MS-DOS模式和Batch模式中设置NLS_LANG

注册表中NLS_LANG和系统环境变量中的NLS_LANG

参考文章

1,关于NLS_LANG参数

Oracle provides Globalization Support that enables users to interact with a database in their own language, as defined by the NLS_LANG parameter. When you install Oracle Database Client components, Oracle Universal Installer sets the NLS_LANG parameter in the registry.

The locale setting of your operating system determines the value of the NLS_LANG parameter at installation. Table C-1 lists the operating system locale and NLS_LANG value mappings.

The NLS_LANG parameter is stored in the registry under the HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEID\NLS_LANG subkey, where ID is the unique number identifying the Oracle home.

The NLS_LANG parameter uses the following format:

NLS_LANG = LANGUAGE_TERRITORY.CHARACTER_SET

Oracle提供全球化的支持,通过定义NLS_LANG参数能够让用户用他们自己的语言使用数据库。当安装Oracle数据库客户端的时候,安装程序通常会在注册表中设置NLS_LANG参数。

在安装中,操作系统的区域设置会决定NLS_LANG参数的值。表C-1列出了操作系统区域和NLS_LANG的对照表。

NLS_LANG参数被存储在注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEID\NLS_LANG子项下,其中ID是识别Oracle home的唯一数字。

NLS_LANG参数使用如下的格式:

NLS_LANG = LANGUAGE_TERRITORY.CHARACTER_SET

where:

ParameterDescription

LANGUAGE

Specifies the language and conventions for displaying messages, day name, and month name.

TERRITORY

Specifies the territory and conventions for calculating week and day numbers.

CHARACTER_SET

Controls the character set used for displaying messages.

2NSL_LANG常用的值

Table C-1 lists commonly used NLS_LANG values for various operating system locales:

Table C-1 NLS_LANG Parameter Values

Operating System LocaleNLS_LANG Value

Arabic (U.A.E.)

ARABIC_UNITED ARAB EMIRATES.AR8MSWIN1256

Bulgarian

BULGARIAN_BULGARIA.CL8MSWIN1251

Catalan

CATALAN_CATALONIA.WE8MSWIN1252

Chinese (PRC)

SIMPLIFIED CHINESE_CHINA.ZHS16GBK

Chinese (Taiwan)

TRADITIONAL CHINESE_TAIWAN.ZHT16MSWIN950

Croatian

CROATIAN_CROATIA.EE8MSWIN1250

Czech

CZECH_CZECH REPUBLIC.EE8MSWIN1250

Danish

DANISH_DENMARK.WE8MSWIN1252

Dutch (Netherlands)

DUTCH_THE NETHERLANDS.WE8MSWIN1252

English (United Kingdom)

ENGLISH_UNITED KINGDOM.WE8MSWIN1252

English (United States)

AMERICAN_AMERICA.WE8MSWIN1252

Estonian

ESTONIAN_ESTONIA.BLT8MSWIN1257

Finnish

FINNISH_FINLAND.WE8MSWIN1252

French (Canada)

CANADIAN FRENCH_CANADA.WE8MSWIN1252

French (France)

FRENCH_FRANCE.WE8MSWIN1252

German (Germany)

GERMAN_GERMANY.WE8MSWIN1252

Greek

GREEK_GREECE.EL8MSWIN1253

Hebrew

HEBREW_ISRAEL.IW8MSWIN1255

Hungarian

HUNGARIAN_HUNGARY.EE8MSWIN1250

Icelandic

ICELANDIC_ICELAND.WE8MSWIN1252

Indonesian

INDONESIAN_INDONESIA.WE8MSWIN1252

Italian (Italy)

ITALIAN_ITALY.WE8MSWIN1252

Japanese

JAPANESE_JAPAN.JA16SJIS

Korean

KOREAN_KOREA.KO16MSWIN949

Latvian

LATVIAN_LATVIA.BLT8MSWIN1257

Lithuanian

LITHUANIAN_LITHUANIA.BLT8MSWIN1257

Norwegian

NORWEGIAN_NORWAY.WE8MSWIN1252

Polish

POLISH_POLAND.EE8MSWIN1250

Portuguese (Brazil)

BRAZILIAN PORTUGUESE_BRAZIL.WE8MSWIN1252

Portuguese (Portugal)

PORTUGUESE_PORTUGAL.WE8MSWIN1252

Romanian

ROMANIAN_ROMANIA.EE8MSWIN1250

Russian

RUSSIAN_CIS.CL8MSWIN1251

Slovak

SLOVAK_SLOVAKIA.EE8MSWIN1250

Spanish (Spain)

SPANISH_SPAIN.WE8MSWIN1252

Swedish

SWEDISH_SWEDEN.WE8MSWIN1252

Thai

THAI_THAILAND.TH8TISASCII

Spanish (Mexico)

MEXICAN SPANISH_MEXICO.WE8MSWIN1252

Spanish (Venezuela)

LATIN AMERICAN SPANISH_VENEZUELA.WE8MSWIN1252

Turkish

TURKISH_TURKEY.TR8MSWIN1254

Ukrainian

UKRAINIAN_UKRAINE.CL8MSWIN1251

Vietnamese

VIETNAMESE_VIETNAM.VN8MSWIN1258

3 在MS-DOS模式和Batch模式中设置NLS_LANG

Before you can use Oracle utilities such as SQL*Plus, SQL Loader, Import, and Export in MS-DOS mode, make sure that you have set the character set field of the NLS_LANG parameter for the session to the correct value.

This is required because MS-DOS mode uses, with a few exceptions, a different character set (or code-page) from Windows (ANSI code-page), and the default Oracle home NLS_LANG parameter in the registry is always set to the appropriate Windows code-page. If you do not set the NLS_LANG parameter for the MS-DOS mode session correctly, incorrect character conversion can corrupt error messages and data.

For Japanese, Korean, Simplified Chinese, and Traditional Chinese, the MS-DOS code-page is identical to the ANSI code-page. In this case, you do not need to set the NLS_LANG parameter in MS-DOS mode.

Similarly, in batch mode, set the correct character set value of NLS_LANG by inserting a SET NLS_LANG command at the start of the batch procedure, according to the character set of the files to be processed in the procedure.

在你使用Oracle应用之前,比如在MS-DOS模式中使用SQL*Plus,SQL Loader,Import,和Export,确保你已经在本次会话中正确的设置了字符集属性和NLS_LANG参数属性。

这是必须的,因为MS-DOS模式的使用会带有一些的来着Windows(ANSI code-page)的不同字符集设置的异常,在注册表中默认的Oracle home NLS_LANG参数总是会被设置成适合Windows code-page的值。

如果你在MS-DOS模式中不正确的设置NLS_LANG参数的值,那么错误的字符转换将会损坏信息和数据。

对于日文,韩文,简体中文和繁体中文,MS—DOS code-page 和ANSI code-page的值一样。在这种情况下,你不需要在MS-DOS模式中设置NLS_LANG参数的值。

同样的,在Batch模式中,根据程序运行过程中被处理的文件字符,通过插入SET LANG_LANG 命令设置正确的NLS_LANG值。

Table C-2 lists the Oracle character sets that correspond to the MS-DOS mode for various operating system locales:

Table C-2 Oracle Character Sets for Operating System Locales

Operating System LocaleCharacter Set

Catalan

WE8PC850

Chinese (PRC)

ZHS16GBK

Chinese (Taiwan)

ZHT16MSWIN950

Czech

EE8PC852

Danish

WE8PC850

Dutch

WE8PC850

English (United Kingdom)

WE8PC850

English (United States)

US8PC437

Finnish

WE8PC850

French

WE8PC850

German

WE8PC850

Greek

EL8PC737

Hungarian

EE8PC852

Italian

WE8PC850

Japanese

JA16SJIS

Korean

KO16MSWIN949

Norwegian

WE8PC850

Polish

EE8PC852

Portuguese

WE8PC850

Romanian

EE8PC852

Russian

RU8PC866

Slovak

EE8PC852

Slovenian

EE8PC852

Spanish

WE8PC850

Swedish

WE8PC850

Turkish

TR8PC857

Catalan

WE8PC850

4,注册表中NLS_LANG和系统环境变量中的NLS_LANG

当用户安装好Oracle客户端后会在注册表中出现NLS_LANG的注册信息,在操作系统的环境变量中用户也可以设置自己的NLS_LANG的值。

但是需要注意:

注册表中的NLS_LANG是用于对应Oracle数据库与windows 的code-page值的,这个值是在安装的过程中自动添加的,一般不要去修改,如果修改后NLS_LANG的值与code-page的值不对应的话,会出现不同字符的异常。

系统环境变脸中NLS_LANG是用于对应Oracle数据显示的,这个值在安装完成后可能会有,也可能没有,是可以修改的,如果希望以中文显示则修改为 NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK ,也可以是英文的 NLS_LANG=AMERICAN_AMERICA.UTF8 ,建议在使用Oracle数据库之间将这里的NLS_LANG设置为英文显示。

5,参考文章

C  Oracle Database Client Globalization Support

【Oracle】详解Oracle中NLS_LANG变量的使用

标签:nis   describe   efi   字符集   sid   document   corrupt   cli   英文

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:http://www.cnblogs.com/HDK2016/p/6880560.html

oracle中lang的作用,【Oracle】详解Oracle中NLS_LANG变量的使用相关推荐

  1. mysql数据库中count的作用_详解 MySQL中count函数的正确使用方法

    1. 描述 在MySQL中,当我们需要获取某张表中的总行数时,一般会选择使用下面的语句 select count(*) from table; 其实count函数中除了*还可以放其他参数,比如常数.主 ...

  2. python中break的作用_详解Python中break语句的用法

    在Python中的break语句终止当前循环,继续执行下一个语句,就像C语言中的break一样. break最常见的用途是当一些外部条件被触发,需要从一个循环中断退出. break语句可以在while ...

  3. java中static修饰函数_详解java中static关键词的作用

    在java中,static是一个修饰符,用于修饰类的成员方法.类的成员变量,另外可以编写static代码块来优化程序性能:被static关键字修饰的方法或者变量不需要依赖于对象来进行访问,只要类被加载 ...

  4. python3中unicode怎么写_详解python3中ascii与Unicode使用

    这篇文章主要为大家详解python3中ascii与Unicode使用的相关资料,需要的朋友可以参考下# Auther: Aaron Fan ''' ASCII:不支持中文,1个英文占1个字节 Unic ...

  5. python中pandas安装视频教程_详解Python中pandas的安装操作说明(傻瓜版)

    很多人来问我pandas的安装(python数据分析里面的必修课) 步骤如下: 安装python的时候,把路径加到系统里,这样,随时可以用pip 路径添加方法: 查找路径: 路径1: 2.例如: 即: ...

  6. [转载] python中for语句用法_详解Python中for循环的使用_python

    参考链接: 在Python中将else条件语句与for循环一起使用 这篇文章主要介绍了Python中for循环的使用,来自于IBM官方网站技术文档,需要的朋友可以参考下 for 循环 本系列前面 &q ...

  7. c语言中双冒号意思_详解C++中的双冒号 ::

    C++中的双冒号 ::第一种,类作用域,用来标明类的变量.函数 Human::setName(char* name); 第二种,命名空间作用域,用来注明所使用的类.函数属于哪一个命名空间的 std:: ...

  8. c语言中优先级劣后级,详解基金中优先级和劣后级的区别

    原标题:详解基金中优先级和劣后级的区别 我们经常看到一些私募基金在投资收益模式上进行创新,将LP分为优先及劣后两个级别.很多朋友都很困惑为何要如此设计.今天,关天资本将为大家详细介绍基金中的优先级和劣 ...

  9. python中break怎么用_详解Python中break语句的用法

    详解Python中break语句的用法 在Python中的break语句终止当前循环,继续执行下一个语句,就像C语言中的break一样. break最常见的用途是当一些外部条件被触发,需要从一个循环中 ...

  10. python中for语句用法_详解Python中for循环的使用_python

    这篇文章主要介绍了Python中for循环的使用,来自于IBM官方网站技术文档,需要的朋友可以参考下 for 循环 本系列前面 "探索 Python,第 5 部分:用 Python 编程&q ...

最新文章

  1. Linux中查看版本信息命令介绍
  2. react全家桶从0到1(react-router4、redux、redux-saga)
  3. AI解救“工具人”:RPA+AI,让万物皆可自动化
  4. 皮一皮:这样的女生还有吗?
  5. Introduction to Algorithm 6.3-3[Second Version]
  6. 单链表的基本操作_数据结构-单链表的基本操作
  7. 【PHP】关于IPv4、IPv6 的操作函数
  8. 修改生产订单的BAPI!
  9. C++中transform的用法
  10. 上周热点回顾(6.14-6.20)
  11. 前端学习(2356):uni基本的插件安装
  12. Delphi/C#之父:Anders Hejlsberg
  13. JDBC技术总结(一)
  14. 南阳理工学院计算机acm,南阳理工学院计算机学院ACM队成员获奖情况[荣誉记]
  15. 网易云音乐下载MP3的方法
  16. 怎么用计算机管理员卸载,没有足够的权限卸载请与系统管理员联系怎么解决
  17. 【贪玩巴斯】数字信号处理Digital Signal Processing(DSP)——第二节「离散时间信号详解」2021-09-29
  18. 传统蓝牙BR/EDR的搜索Inquiry
  19. 只有A2L文件如何连接INCA
  20. ChatGPT保姆级教程,一分钟学会使用ChatGPT!

热门文章

  1. CMP?MSP?1+1才能大于2
  2. 计算机ps一级知识点,2017年计算机等级一级Photoshop常考知识点
  3. java redis高并发demo_java使用redis模拟高并发秒杀活动
  4. 【图像重建】基于matlab迭代步长自适应图像超分辨重建【含Matlab源码 048期】
  5. 【优化算法】多目标蝗虫优化算法(MOGOA)【含Matlab源码 937期】
  6. 【优化算法】蝗虫优化算法(GOA)【含Matlab源码 936期】
  7. 【语音识别】基于matlab特定人的语音识别分辨【含Matlab源码 534期】
  8. 【脑电信号】基于matlab HMM睡眠状态检测【含Matlab源码 050期】
  9. python3.6.5 安装第三方库
  10. controller调用controller的方法_【笔记】Simulink C语言代码生成与使用方法