oracle IMPDP导入的时候,能自动把之前表中的数据都删除吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle IMPDP导入的时候,能自动把之前表中的数据都删除吗?相关的知识,希望对你有一定的参考价值。

可以,不过需要设置。
格式: impdp KEYWORD=value 或 KEYWORD=(value1,value2,...,valueN) 示例: impdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp
REUSE_DATAFILES如果表空间已存在, 则将其初始化 [N]。
TABLE_EXISTS_ACTION导入对象已存在时执行的操作。有效的关键字为: APPEND, REPLACE, [SKIP] 和 TRUNCATE。
参考技术A rows=n 是不导入数据吧。。。而且是imp的命令,lz问的是impdp的命令应该用TABLE_EXISTS_ACTION Action to take if imported object already exists. Valid keywords: (SKIP), APPEND, REPLACE and TRUNCATE.另外推荐一篇非常好的在线文档.exp/imp的命令和expdp/impdp的对应关系How Data Pump Export Handles Original Export ParametersHow Data Pump Import Handles Original Import Parameters/docs/cd/E11882_01/server.112/e16536/dp_legacy.htm#SUTIL959oracle IMPDP导入的时候,能自动把之前表中的数据都删除吗?

oracle 的 impdp 命令如何将数据导入到指定表空间的指定数据文件中

为了将十几个单位的数据放在一起,ORACLE原来的方法一个表空间包含多个数据文件,如:tablespace_test,数据文件为data_0,data_1,data_2……data_n,然后在建表时通过某列的值范围条件指定分区,将不同单位的数据写入不同的分区中。由于每个单位的数据表较多(近1000张数据表,各单位均相同),不想通过这种方式,所以想通过导入命令,强制将各单位的数据导入不同数据文件中,语句如下:
impdp p_test/test directory=EXPDIR dumpfile=1.dmp remap_schema=dzsp:p_test r
emap_tablespace=users:tablespace_test remap_datafile=%:data_1 table_exists_action=APPEN
D reuse_datafiles=y
执行成功后数据是导进去了,但没有按我的原意只将数据写入tablespace_test分区的data_1数据文件中,而是随机的写入了不同的数据文件中(data_1……n)中,请问要如何处理才能达到我的目的?

答案是:不可能做到!
oracle有自己的算法均衡地把数据分散到各个DATAFILE里去。
当然如果一个表空间只有一个数据文件,就只能写到这个数据文件里去了。
参考技术A 两边数据库的
db_block_size
一样大小不?
或者看看具体表空间的
db_block_size
是否相同

以上是关于oracle IMPDP导入的时候,能自动把之前表中的数据都删除吗?的主要内容,如果未能解决你的问题,请参考以下文章

Linux下用impdp导入数据时报错,数据文件为.expxp格式的,求指导。。。

如何把dmp导入到指定用户指定的表空间 [转]

oracle impdp全库导入时如何指定表空间位置

Oracle impdp导入异常

impdp导入expdp导出数据库实例

oracle 的 impdp 命令如何将数据导入到指定表空间的指定数据文件中