oracle 12c中的IMP不会创建具有IDENTITY功能的表

问题描述 投票:1回答:1

我使用EXP导出了一个包含大约150个表的模式。

模式中的几乎所有表都具有IDENTITY列。

当我在不同的服务器上使用IMP导入.dmp文件时,它创建了所有表并导入了数据,但删除了IDENTITY。

有什么建议吗?

oracle import oracle12c
1个回答
3
投票

有什么建议吗?

是。请改用Datapump。

Oracle通过系统生成的序列实现Identity列。这会导致将标识列导入新数据库时出现问题,因为导出的标识列中生成的序列名称可能会与现有生成的序列冲突。 Datapump通过删除导入的序列并创建与标识列关联的新序列来处理此问题。

此功能仅可通过Datapump获得。自11g以来,不再支持旧命令行IMP和EXP实用程序 - check the Utilities Guide's table of contents。可执行文件仅用于处理旧转储 - Datapump无法读取旧Skool EXP文件,因此我们仍然必须使用IMP来导入它们。但是任何新的导出都应该使用Datapump来完成 - 特别是如果你想利用更新的数据库功能。

© www.soinside.com 2019 - 2024. All rights reserved.