Oracle XE 执行安装程序后,很简单的默认为 SIMPLIFIED CHINESE_CHINA.AL32UTF8 ,通过如下方法可以修改成为 ZHS16GBK 。
客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。客户端的字符集设置存在多个地方: session>环境变量>注册表>参数文件
字符集要求一致,但是语言设置却可以不同,语言设置建议用英文。如字符集是zhs16gbk,则nls_lang可以是American。
查看数据库字符集
select * from nls_database_parameters;
select * from nls_instance_parameters;
select * from nls_session_parameters;
设置服务器字符集
SQL>connect sys/manager as sysdba;
SQL>shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>startup mount;
ORACLE 例程已经启动。
Total System Global Area 1068937216 bytes
Fixed Size 2260048 bytes
Variable Size 788530096 bytes
Database Buffers 272629760 bytes
Redo Buffers 5517312 bytes
数据库装载完毕。
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 internal_use ZHS16GBK;
数据库已更改。
SQL>shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>startup;
ORACLE 例程已经启动。
Total System Global Area 1068937216 bytes
Fixed Size 2260048 bytes
Variable Size 788530096 bytes
Database Buffers 272629760 bytes
Redo Buffers 5517312 bytes
数据库装载完毕。
数据库已经打开。