寻找“dmp文件修改相应字节,改变倒入imp字符集” 以前在论坛上看到这篇文章,现在怎么都找不到,请大家替我找找。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 from csdn.net使用一点点技巧,就可以使导出/导入在不同的字符集的数据库上转换数据。这里需要一个2进制文件编辑工具即可,如uedit32。用编辑方式打开导出的dmp文件,获取2、3字节的内容,如00 01,先把它转换为10进制数,为1,使用函数NLS_CHARSET_NAME即可获得该字符集:(ultraedit 打开几百M到上G的文件很慢,我试了winHex,哪个速度啊,闪电!)SQL> select nls_charset_name(1) from dual;NLS_CHARSET_NAME(1)-------------------US7ASCII可以知道该dmp文件的字符集为US7ASCII,如果需要把该dmp文件的字符集换成ZHS16GBK,则需要用NLS_CHARSET_ID获取该字符集的编号:SQL> select nls_charset_id('zhs16gbk') from dual;NLS_CHARSET_ID('ZHS16GBK')-------------------------- 852把852换成16进制数,为354,把2、3字节的00 01换成03 54,即完成了把该dmp文件字符集从us7ascii到zhs16gbk的转化,这样,再把该dmp文件导入到zhs16gbk字符集的数据库就可以了。(注意,十进制数与十六进制之间的转换,想明白其中的道理) 怎么导出表与序列? 正在学习oracle,书上有个update的语法不懂,求指点 Oracle 导出数据问题 oracle group by每天某段时间 配置Oracle AS服务后服务起不来! 紧急求救!要写oracle监视器,寻相关语句!! 关闭数据库表的约束问题 请大家帮忙解决一个统计上的问题! 为什么PL/SQL DEVELOP运行不通过,在SQLPLUS中有可以运行通过呢? 这个语句放到pl/sql里边该怎么写? 哪位大侠能提供Oracle 10g grid control的下载地址?Oracle官方网站上的下不下来,谢谢! 如何在oracle的存储过程中使用临时表?
使用一点点技巧,就可以使导出/导入在不同的字符集的数据库上转换数据。这里需要一个2进制文件编辑工具即可,如uedit32。用编辑方式打开导出的dmp文件,获取2、3字节的内容,如00 01,先把它转换为10进制数,为1,使用函数NLS_CHARSET_NAME即可获得该字符集:(ultraedit 打开几百M到上G的文件很慢,我试了winHex,哪个速度啊,闪电!)
SQL> select nls_charset_name(1) from dual;
NLS_CHARSET_NAME(1)
-------------------
US7ASCII
可以知道该dmp文件的字符集为US7ASCII,如果需要把该dmp文件的字符集换成ZHS16GBK,则需要用NLS_CHARSET_ID获取该字符集的编号:
SQL> select nls_charset_id('zhs16gbk') from dual;
NLS_CHARSET_ID('ZHS16GBK')
--------------------------
852
把852换成16进制数,为354,把2、3字节的00 01换成03 54,即完成了把该dmp文件字符集从us7ascii到zhs16gbk的转化,这样,再把该dmp文件导入到zhs16gbk字符集的数据库就可以了。(注意,十进制数与十六进制之间的转换,想明白其中的道理)