欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

新解Oracle数据库DMP文件IMP时候的字符集不对应问题

程序员文章站 2022-05-05 17:40:20
...

好几年没有搞Oracle了,今天心血来潮想把Oracle数据库装起来,找了一台服务器装好windows server 2003 STND版本,然后装了一个Or

好几年没有搞Oracle了,今天心血来潮想把Oracle数据库装起来,

找了一台服务器装好windows server 2003 STND版本,

然后装了一个Oracle9.2.0.4。

想起很多年前还有个数据的DMP文件(用Oracle的exp命令倒出的数据库备份)

找出来打算IMP进去。但是IMP的时候系统报错:

imp-00016 不支持要求的字符集转换(从类型31到852)。

这是因为我以前的oracle系统是英文字符集的(0x001f),而现在安装的Oracle是简体中文字符集(0x0354)。

字符集问题以前也是常常遇到的,记忆中1999年的时候解决这个问题比较麻烦,而且,我也记不清楚了。

今天查了网上资料,发现随着技术发展,,现在已经有了非常简单的解决方法:

1、在新装的Oracle中,随便EXP一个DMP文件;

2、用二进制编辑工具打开看01,02字节是多少,比如我的就是(03 54);

3、再用二进制编辑工具打开原来的地DMP文件,发现01,02字节是(00 1F);

4、将原来的数据文件的01,02字节也改成03 54,保存。

再用IMP工具就不报错了,哈哈~~~

我记得原来是要改注册表,还要改Oracle的系统表,非常麻烦。

(我用的二进制编辑工具是UtraEdit16)

新解Oracle数据库DMP文件IMP时候的字符集不对应问题