假设我想出口
所以我向CMD发出命令如下,
(1) expdp system/manager@DB3 directory=backupdir dumpfile=backup.dmp logfile=backup.log include=view:"IN ('V1','V2')",函数:IN ('f1',‘f2’),过程:IN ('p1',‘p2’),表:IN ('T1',‘T2’)
(2)支出系统/管理器@db3 directory=backupdir dumpfile=backup.dmp logfile=backup.log include=view:"IN ('V1','V2')“include=function:"IN ('f1','f2')”include=procedure:"IN ('p1','p2')“include=table:"IN ('T1','T2')”
这两种命令都不起作用:
错误: ORA-39071:包含的值格式错误。
下面的命令可以工作,但它只导出指定的表。它不导出视图、过程和功能。
(3)扩展系统/管理器@db3 directory=backupdir dumpfile=backup.dmp logfile=backup.log include=view,过程、功能,表:“IN ('T1','T2')”
该怎么办呢?
发布于 2018-11-09 08:23:12
ORA-39071:包含的值格式错误。
命令行不喜欢引号。有两种方法来处理这个问题。
第一种方法是转义引号:
expdp system/manager@DB3 directory=backupdir dumpfile=backup.dmp logfile=backup.log
include=view:\"IN (\'V1\',\'V2\')\" include=function:\"IN (\'f1\',\'f2\')\" include=procedure:\"IN (\'p1\',\'p2\')\" include=table:\"IN (\'T1\',\'T2\')\"
如果这看起来很乏味(而且确实如此),那么第二个选择就是定义一个参数文件。您可以在其中包含所有选项,而无需转义引号,只需使用PARFILE参数运行expdp
即可。
架构“DBpractice”中没有任何更改,其中我希望导入已从名为DB3的架构导出的表、视图、函数和过程。
这确实是一个新问题,但解决方案非常简单:您需要使用接受impdp
的REMAP_SCHEMA参数运行source_schema:target_schema
。所以在你的情况下
impdp system/manager directory=backupdir dumpfile=backup.dmp remap_schema=db3:DBpractice
https://stackoverflow.com/questions/53221353
复制相似问题