我的导出文件中缺少Oracle,Blob数据

Spr*_*ing 5 oracle oracle11g data-export oracle-sqldeveloper

我使用Oracle 11g,我试图导出我的数据(只有数据,而不是表创建脚本等)所以它可以被客户导入他们的数据库

当我使用Oracle Sql开发人员的导出数据库时,它只导出数据但我的BLOB缺失了!我的一个表中有很多图像文件,我也想导出.

我想知道我真的需要使用oracle exp imp工具;

http://docs.oracle.com/cd/B28359_01/server.111/b28319/exp_imp.htm#i1004777

任何的想法?

Ale*_*ole 6

从文档:

格式:为要卸载的数据选择所需的输出格式.根据所选格式,可能会显示其他选项.例如,对于xls(Microsoft Excel文件),您可以为数据和SELECT语句指定工作表名称.

对于CLOB数据,仅当格式为加载程序(SQL*Loader)或pdf(PDF)时才支持导出.某些导出类型仅导出字符串的子集,后跟省略号(...).

它没有明确地引用BLOB,但是如果CLOB只能作为loader或pdf导出,那么BLOB也会有这种限制.如果要在另一个模式或数据库中重新创建此数据,SQL*Loader格式似乎是一个不错的选择.

你期望这个insert陈述是什么样的?你必须有一个包含二进制值的文本文字,这本身就是一个问题,但你也被限制在4k - 许多图像文件可能会超过.对于CLOB,它可能会给你第一个4903个字符,然后是字符串文字中的省略号,但我不确定; 对于一个BLOB甚至没有任何意义.

如果要在数据库之间传输数据,则应考虑数据泵导出/导入,或者如果您(或您的客户端)受服务器访问限制,则可以回退到传统导出/导入.两者都支持LOB.数据泵是优越的,如果可能的话应该优先使用.唯一的缺点是转储文件被写入数据库服务器并获得对它们的访问权限(或者对某些组织的directory写入对象的权限可能会有问题.