Oracle字符集转换(英文->中文)方法

本文提供了一套详细的步骤来指导如何将Oracle数据库的字符集从英文转换到中文(ZHS16GBK),包括调整数据库参数、注册表键值更改、数据导出及导入等关键操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 Oracle字符集转换(英文->中文)方法  
  
注意:请严格按照指定步骤进行!操作前请先对数据库做整库备份。  
  
1、在原数据库(字符集为英文)执行sqlplus,连接sys用户,修改字符集参数,然后退出。  
  
SQL> connect sys/******;   (口令一般为"manager")  
update props$ set value$ = 'ZHS16GBK' where name = 'NLS_CHARACTERSET';  
update props$ set value$ = 'ZHS16GBK' where name = 'NLS_NCHAR_CHARACTERSET';  
commit;  
SQL> quit;  
  
2、执行svrmgrl,关闭并重新开启Oracle数据库  
  
SVRMGR> connect internal/******;   (口令一般为"oracle")  
SVRMGR> shutdown immediate;  
SVRMGR> startup mount;  
SVRMGR> alter system enable restricted session;  
SVRMGR> alter system set job_queue_process=0;  
SVRMGR> alter database open;  
SVRMGR> alter database character set ZHS16GBK;  
SVRMGR> shutdown immediate;  
SVRMGR> exit;  
  
3、执行regedit,将键值HKEY_LOCAL_MACHINE/Software/ORACLE/NLS_LANG  
    由    AMERICAN_AMERICA.WE8ISO8859P1  
    转换为  SIMPLIFIED CHINESE_CHINA.ZHS16GBK  
  
4、执行exp导出数据  
  
5、执行regedit将键值HKEY_LOCAL_MACHINE/Software/ORACLE/NLS_LANG  
    由    SIMPLIFIED CHINESE_CHINA.ZHS16GBK  
    恢复为  AMERICAN_AMERICA.WE8ISO8859P1  
  
6、执行sqlplus,连接sys用户,恢复字符集参数,然后退出。  
  
connect sys/******;   (口令一般为"manager")  
update props$ set value$ = 'WE8ISO8859P1' where name = 'NLS_CHARACTERSET';  
update props$ set value$ = 'WE8ISO8859P1' where name = 'NLS_NCHAR_CHARACTERSET';  
commit;  
SQL> quit;  
  
7、重复步骤2,关闭并重新开启Oracle数据库  
  
8、将导出的dmp文件导入目标数据库(字符集为中文)

Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=111540

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值