客服端 NLS_LANG 环境变量对 NLS_DATE_FORMAT 参数设置的影响
一. NLS_LANG , 这个参数作为环境变量配置于 .bash_profile ( LINUX) 中(在windows 中,配置于注册表中)。 其作用主要用于设置oracle客服端工具的语言环境,如sql*plus这样的工具。其格式主要用三部分组成: 语言, 区域, 字符集 。 语法格式为: NLS_LANG=language_territory.charset , 其中language 表示语言部分, territory表示区域, charset 表示字符集。 eg: 'SIMPLIFIED CHINESE'_SINGAPORE.ZHS16GBK 。(根据NLS_LANG设置的不同,默认的日期格式会不同,比如:若NLS_LANG=english_america.UTF8,则默认的日期格式就是'DD-MON-RR',若NLS_LANG=SIMPLIFIEDCHINESE_SINGAPORE.ZHS16GBK ,则默认的日期格式就是'yyyy/mm/dd')
二. NLS_DATE_FORMAT , 这个参数是实例级的, 设置spfile或者pfile 文件中。 其设置主要用于控制 date 类型数据的格式化输出。 同时其作用域 session级,instance级, 也说明这个参数可以在session 中改变,各个session可以设置不同 date格式。NLS_DATE_FORMAT 只能用alter session修改,不能用alter system修改
三. NLS_LANG 和 NLS_DATE_FORMAT 的关系。
在linux中, 通过修改参数文件中 NLS_DATE_FORMAT 往往不能达到修改 date 的输出格式。 但是如果你修改.bash_profile中NLS_LANG参数而又能达到修改date 的默认输出格式。如果想永久的修改NLS_DATE_FORMAT则必须要在.bash_profile中添加NLS_DATE_FORMAT=' '来修改
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24984814/viewspace-707921/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/24984814/viewspace-707921/