Oracle查看字符集,以及中文乱码的处理

col VALUE format a20

select ParaMETER,VALUE from nls_database_parameters where ParaMETER like '%CHaraCTERSET%';


ParaMETERVALUE
--------------------------------------------------
NLS_CHaraCTERSETAL32UTF8
NLS_NCHAR_CHaraCTERSETAL16UTF16



select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.AL32UTF8



LANG是针对Linux系统的语言、地区、字符集的设置,对linux下的应用程序有效,如date;

NLS_LANG是针对Oracle语言、地区、字符集的设置,对oracle中的工具有效


export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export NLS_LANG=AMERICAN_AMERICA.UTF8 # 不可以设置为这个,设置为这个,sqlplus无法登陆

export NLS_LANG=SIMPLIFIED CHInesE_AMERICA.UTF8


LANG=en_US.UTF-8


export LANG=zh_CN.GB2312

export LANG=en_US.UTF-8



locale 查看字符集

locale -a 查看本地字符集

locale -m 查看所有支持的字符集


alter session set nls_date_format = 'yyyy-MM-dd HH24:mi:ss' ;


select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;

select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;



保证中文不乱码的方法

1、远程工具,比如CRT,xshell字符集设置为支持中文的字符集如 utf-8

2、操作系统环境变量设置支持中文的字符集,如 utf-8 LANG或者 NLS_LANG

3、数据库支持中文字符集 utf-8

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...