如何使用imp命令覆盖现有数据



我使用imp命令导入数据库,但一次之后,我们将再次执行imp命令,以便第二次插入数据。我们希望删除旧数据并插入新数据。

这就是我尝试过的。。。

请帮助我并建议具体的参数,这有助于解决这类问题。。

谢谢并为我的英语感到抱歉。。

IMPDP具有参数:TABLE_EXISTS_ACTION={SKIP|APPEND|TRUNCATE|REPLACE}

table_exists_action=skip:这表示忽略导入文件中的数据并保持现有表不变。这是默认值,如果设置content=data_only,则它不是有效的参数。

table_exists_action=append:这表示将导出数据附加到现有表上,保留现有行并添加dmp文件中的新行。当然,数据列的数量和类型必须匹配才能使用append选项。就像追加提示一样,Oracle不会重新使用自由列表上的任何空间,并且表的高水位线将升高以容纳传入的行。

table_exists_action=truncate:这表示截断现有的表行,保留表定义并替换正在导入的expdp-dmp文件中的行。若要使用此选项,必须在目标表上没有任何引用完整性(约束)。当现有表列与导入表列匹配时,可以使用table_exists_action=truncate。truncate选项不能通过数据库链接或与群集表一起使用。

table_exists_action=replace:这表示删除整个表,并替换导入dmp文件中的表定义和行。若要使用此选项,必须在目标表上没有任何引用完整性(约束)。当现有表列与导入表列不匹配时,可以使用table_exists_action=replace。

相关内容

  • 没有找到相关文章

最新更新