从导入Oracle转储文件的特定表?(Import specific tables from ora

2019-09-20 21:07发布

我有一个庞大的Oracle数据库的转储所以不可能将其导入所有。 我想导入名为X的特定表的问题是,X有外键。 如果我只导入X,我会收到以下错误:

imp user/pass@dbName tables=X  rows=y ignore=Y
ORA-02291: integrity constraint violated - parent key not found

我已经有本地(但没有数据),整个分贝,我想导入关联到X.我如何能实现所有的表? 我已经安装了PLSQL。 我还需要了解这些表的顺序知道该先导入。

Answer 1:

有一些问题,所以我会尽量回答一个接一个。

ORA-02291: integrity constraint violated - parent key not found

没有道理的,因为你知道你没有对表X.父记录到您可能还需要使用标志的方式猜这个CONSTRAINTS=N ,因为你已经有了DB正如你所说的。

“我想导入关联到X.我如何能实现所有的表?”

那么别无选择,只能手工查找所有的依赖关系(或使用数据字典表user_cons_columnsuser_constraints等来查找),并导入这些表也。 想想看,如果你不这样做。 你会打破你的数据的完整性。 如果您仍然希望在表X的数据,而不依赖然后禁用限制,然后导入。 但是,你将不会被再次启用您的约束,我不知道你想用碎数据做什么。

“我还需要了解这些表的顺序知道该在第一进口。”

禁止进口之前的约束,然后导入后启用它们。 你不必担心为了在这种情况下。



Answer 2:

你担导入之前禁用所有DB的约束,之后重新启用它们。 看到:

  • 禁用,所有表的约束,在甲骨文或
  • oracle_disable_constraints


文章来源: Import specific tables from oracle dump file?