修改oracle字符集

查询字符集select * from nls_database_parameters

先停止本数据库服务:
SQL>shutdown immediate;
SQL>startup   restrict;   此处要注意启动方式要加 restrict参数ORACLE 例程已经启动。
修改字符集
SQL> alter session set sql_trace=true;
  Session altered.
SQL> alter system enable restricted session;
  System altered.
SQL> alter system set job_queue_processes=0;
  System altered.
SQL> alter system set aq_tm_processes=0;
    System altered.
SQL> alter database open;
alter database character set ZHS16GBK;
ORA-12712: new character set must be a superset of old character set
RROR at line 1:
结果报错,提示新字符集必须是老字符集的超集。【从utf8转ZHS16GBK】
ALTER DATABASE character set INTERNAL_USE ZHS16GBK; (强制修改NLS_CHARACTERSET)
alter database national character set internal_use AL16UTF16;            (强制修改NLS_NCHAR_CHARACTERSET)
修改完成,重新启动数据库和实例
SQL>shutdown immediate;
SQL>startup;

猜你喜欢

转载自tiger-hu.iteye.com/blog/1902550