笔者在做项目过程中碰到以下问题,在客户提供的数据库备份文件需要导入到数据库中,以便使用,数据库为Oracle 9.1.1,安装在Windows Server 2000 JP系统中,服务器端字符集
为JAPANESE_JAPAN_UTF8,而客户端使用的是中文Windows Server 2000系统,字符集为SIMPLIFIED CHINESE_CHINA.ZHS16GBK。
在插入数据过程中出现如下问题:
C:\oracle\ora90\BIN>imp scott/tiger@SDES full=y file=c:\eXPdat.dmp
Import: Release 9.0.1.1.1 - ProdUCtion on 星期一 1月 22 19:05:43 2007
(c) Copyright 2001 Oracle Corporation. All rights reserved.
连接到: Oracle9i Release 9.0.1.1.1 - Production
JServer Release 9.0.1.1.1 - Production
IMP-00016: 不支持要求的字符集转换(从类型830到852)
IMP-00000: 未成功终止导入
使用2进制文件编辑工具,如uedit32。打开导出的dmp文件,获取2、3字节的内容,如00 01,先把它转换为10进制数,为1,使用函数NLS_CHARSET_NAME即可获得该字符集:
SQL> select nls_charset_name(1) from dual;
NLS_CHARSET_NAME(1)
-------------------
US7ASCII
可以知道该dmp文件的字符集为US7ASCII,假如需要把该d
分页:[1] 2 3 4