关键字:Oracle IMP/EXP DMP 字符集
第一步:修改数据库的字符集为ZHS16GBK,并使用EXP命令导出DMP文件,导出文件名为:expZHS16GBK.dmp。
第二步:修改数据库的字集集为US7ASCII,并使用EXP命令导出DMP文件,导出文件名为:expUS7ASCII.dmp。
第三步:使用UEStudio/UltraEdit文本编辑工具打开上述两个dmp文件,并利用该文本工具提供的比较功能对上述两个文件进行比较,比较结果如下图所示:
从上图中可以看出,在每个DMP文件的第4行(即:00000030H处)的前两位即对应数据库字符集的编码。注意这里的编码是16进制。我们还需将其转换到10进制后才能使用Oracle提供的命名来确定任意字符集编码所对应的字体集名称。如这里的0354H转换到10进制后即是852(注:可使用系统自带的计算器进行进制转换) 。得到编码后我们可以使用如下的命令确定其所对应的字符集:SELECT nls_charset_name(852) FROM dual; 如下图所示:
至此,以能准确判断出任意给定DMP文件的字符集。另外当你知道字符集的名称时,也可以很方便的确定该字符集所对应的字符集编码。命令如下:select nls_charset_ID('ZHS16GBK') FROM dual; 如下图所示:
版权申明:
本文属作者原创,欢迎转载,但需注明原文出处并提供原文链接。
阅读(7176) | 评论(0) | 转发(0) |