好几年没有搞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)