子集到超集的字符集转换
下面呢,我们来举例oracle字符集从ZHS16GBK转为AL32UTF8的操作方法。请注意,这里是测试环境,只介绍具体的操作方法。生产库一定要评估后再行操作。
1、以sysdba身份登录Oracle系统
C:\Users\fcwr2>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on 星期日 6月 7 13:52:29
Copyright (c) 1982, , Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
2、关闭数据库,停止数据库服务
SQL>shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
3、启动Oracle例程
SQL> startup mount;
ORACLE 例程已经启动。
数据库装载完毕。
4、更改系统状态
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 AL32UTF8;
5、关闭数据库
SQL> shutdown immediate
6、启动数据库实例
SQL> startup;
我们可以看到,由于ZHS16GBK的超集是AL32UTF8字符集,所以在字符集转换过程中非常顺利,没有特别的报错。很多网友说来看看是否导致转换成功了,我们可以使用命令:select userenv(language) from dual查看。可以看到数据库字符集以及变为AL32UTF8了。
好了,关于oracle数据库字符集由子集转换为超集的具体操作方法就介绍到这里,下一期小编将为大家介绍oracle数据库字符集由超集到子集的具体转换方法,以及报错ORA-12712:新字符集必须为旧字符集的超集的解决方法。
想了解更多精彩内容,快来关注出彩职场人