oracle修改字符集

修改Oracle客户端字符集方法:

1:可以通过修改注册表键值永久设置,类似于这样的键值:
HKEY_LOCAL_MACHINE/SOFTWARE/Oracle/HOME0下,
如一般的简体中文
nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

 

2:查看数据库当前字符集参数设置

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
----------------------------------------------------
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

 

 

另附:

----------------------------------------------------

查看 Oracle11g 的字符集:

1、 查看全部字符集:    select name, value$ from props$ where name like '%NLS%';

2、查看服务端的字符集:    select userenv('language') from dual;

    HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_OraDb11g_home1/ 中右边框中的 NLS_LANG 键所对应的值为即当前 Oracle 客户端使用的字符集,如 SIMPLIFIED CHINESE_CHINA.ZHS16GBK,再如:american_america.al32utf8

 3、查看服务端字符集:   SQL>  select * from nls_database_parameters;

 4、查看客户端字符集:  SQL> select * from nls_instance_parameters;

 5、查看 session 字符集:    SQL> select * from nls_session_parameters;

 

6、修改字符集:

SQL> conn / as sysdba;

SQL> shutdown immediate;

SQL> startup mount;

SQL> alter system enable restricted session;

SQL> alter system set job_queue_processes = 0;

SQL> alter system set aq_tm_processes = 0;

SQL> alter database open;

SQL> alter database character set ZHS16GBK;    

--此处需要注意,若报错,则改为

ALTER DATABASE character set INTERNAL_USE ZHS16GBK; 

--

SQL> alter shutdown immedite;

SQL> startup;

你可能感兴趣的:(oracle)