Oracle的字符集由参数NLS_LANG决定:
NLS_LANG参数由以下部分组成:
NLS_LANG=<Language>_<Territory>.<Clients Characterset>
NLS_LANG各部分含义如下:
LANGUAGE指定Oracle消息使用的语言、日期中月份和日显示格式
TERRITORY指定货币和数字格式、地区和计算星期及日期的习惯
CHARACTERSET控制客户端应用程序使用的字符集
那么如何让Oracle的客户端显示中文呢?前提是Oracle的字符集是支持中文的字符集的超级,我们常用的字符集有gbk和utf8
之后我们在操作系统层面定义NLS_LANG变量,让其支持中文,这样还不够,我们要保持服务端、客户端、系统、我们使用的终端的字符集都保持一致才行
NLS_LANG我们一般有以下两个选择,这2种选择对应的终端字体也需要做相应的调整:
export NLS_LANG='simplified chinese_china.al32utf8' 对应的终端字体调成utf8
export NLS_LANG='simplified chinese_china.zhs16gbk' 对应的终端字体调成gbk