首先,使用/as sysdba方式登录数据库
sqlplus "/as sysdba"
登录成功后,查看现在的编码方式
select * from nls_database_parameters where parameter='NLS_CHARACRERSET';
开始修改数据库字符集,需要注意的是,新修改的字符集必须是原有字符集的超集。在刚刚的sqlplus窗体中继续输入一下命令
1.关闭数据库
关闭的过程中如果提示ora-01012错误,可以尝试重启oracle数据库服务,然后重新关闭即可,出这个问题的原因是因为没有完全关闭数据库造成的。
shudown immediate;
2.挂载数据库
startup mount;
3.设置session
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
4.启动数据库
ALTER DATABASE OPEN;
5.修改字符集
utf-8:UTF8
GBK:ZHS16GBK
可以从gbk转向utf8,不能从utf-8转为gbk。
ALTER DATABASE CHARACTER SET ZHS16GBK;
6.重新启动数据库
shutdown immediate;
startup;
评论