ITPub博客

首页 > Linux操作系统 > Linux操作系统 > impdp导入XMLTYPE字段类型的数据出现乱码的问题

impdp导入XMLTYPE字段类型的数据出现乱码的问题

原创 Linux操作系统 作者:尛样儿 时间:2012-07-18 10:02:08 0 删除 编辑

        今天一个客户打电话说,他们的数据库很多表存在XMLTYPE的字段,在做数据迁移的时候,使用expdp将数据导出,之后导入另一个数据库即出现乱码,使用了包括修改NLS_LANG等很多方法还是乱码。即使在单机环境下做测试,从本地导出再倒入本地也是乱码。

一.数据测试。
        接到这个问题之后,我也在本机做了测试,创建表的代码如下:
CREATE TABLE TEST.T_XML 
XML_TEST XMLTYPE 
XMLTYPE XML_TEST STORE AS BINARY XML; 
        通过PL/SQL工具向这个表中加载一个包含中文的标准XML文件。
        使用exp导出报不支持该类型,使用expdp顺利导出,对现有的表进行重命名,之后再次导入,查看该字段数据即是乱码。

二.问题解决。
        google搜索了一些资料,发现是由expdp参数问题导致的,执行以下的命令导出数据库数据:
C:\Users\LIUBINGLIN>expdp 's/s as sysdba' directory=dump_dir dumpfile=test2.dmp
schemas=test  DATA_OPTIONS=XML_CLOBS
导出的时候增加红色加粗的参数。
执行以下的命令导入数据:
C:\Users\LIUBINGLIN>impdp 's/s as sysdba' directory=dump_dir dumpfile=test2.dmp
schemas=test

导入之后数据再没有乱码。

执行expdp help=y查看DATA_OPTIONS选项值。
DATA_OPTIONS
数据层选项标记。
有效的关键字值为: XML_CLOBS。

参考资料: http://www.qnr.cn/pc/ora/study/201204/762690_3.html

--end--


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23135684/viewspace-735906/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle数据库管理员,Oracle数据库系统构架员;2012年7月出版《构建最高可用Oracle数据库系统:Oracle 11gR2 RAC管理、维护与性能优化》一书;Oracle 10g OCM。

注册时间:2010-01-05

  • 博文量
    483
  • 访问量
    5260235