数据泵导入SKIP_CONSTRAINT_ERRORS的bug(一)
2008-10-25 12:57:52 来源:WEB开发网可以看到DATA_OPTIONS=SKIP_CONSTRAINT_ERRORS已经起到了作用,这时导入忽略掉重复的数据,而将表中不存在的数据导入到表中。
下面修改一下表结构,将主键删除,手工建立一个非唯一索引,然后添加主键:
SQL> ALTER TABLE T_CONS DROP PRIMARY KEY;
表已更改。
SQL> CREATE INDEX IND_T_CONS_ID ON T_CONS(ID);
索引已创建。
SQL> ALTER TABLE T_CONS ADD CONSTRAINT PK_T_CONS PRIMARY KEY (ID);
表已更改。
SQL> DELETE T_CONS WHERE ID < 10;
已删除9行。
SQL> COMMIT;
提交完成。
SQL>HOSTimpdpyangtk/yangtkdirectory=d_outputdumpfile=t_cons.dpcontent=data_onlydata_options=skip_constraint_errors
Import:Release11.1.0.6.0-64bitProductionon星期二,1410月,20081:33:24
Copyright(c)2003,2007,Oracle.Allrightsreserved.
连接到:OracleDatabase11gEnterpriseEditionRelease11.1.0.6.0-64bitProduction
WiththePartitioning,OLAP,DataMiningandRealApplicationTestingoptions已成功加载/卸载了主表"YANGTK"."SYS_IMPORT_FULL_01"启动"YANGTK"."SYS_IMPORT_FULL_01":yangtk/********directory=d_outputdumpfile=t_cons.dpcontent=data_onlydata_options=skip_constraint_errors处理对象类型TABLE_EXPORT/TABLE/TABLE_DATA
ORA-31693:表数据对象"YANGTK"."T_CONS"无法加载/卸载并且被跳过,错误如下:
ORA-00001:违反唯一约束条件(YANGTK.PK_T_CONS)作业"YANGTK"."SYS_IMPORT_FULL_01"已经完成,但是有1个错误(于01:33:30完成)
只是将系统自动产生的索引改为非唯一索引,就导致了SKIP_CONSTRAINT_ERRORS参数无效。
更多精彩
赞助商链接