欢迎光临
我们一直在努力

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

col VALUE format a20

select PARAMETER,VALUE  from nls_database_parameters  where PARAMETER like '%CHARACTERSET%';

PARAMETER        VALUE
------------------------------ --------------------
NLS_CHARACTERSET            AL32UTF8
NLS_NCHAR_CHARACTERSET        AL16UTF16

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 

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。