Oracle ORA-14102: 只能指定一个 LOGGING 或 NOLOGGING 子句
oracle 11g ,在通过命令impdp向一个数据库用户导入数据时,出现错误:
ORA-14102: 只能指定一个 LOGGING 或 NOLOGGING 子句
造成此问题的原因是:当导入的表里没有数据时,在给表创建索引和主键时会出现该错误。引起错误的语句大概如下:
ALTER TABLE "test"."XIEBO_EXTREMUM" ADD CONSTRAINT "PK_XIEBO_EXTREMUM" PRIMARY KEY ("MS_ID", "TME_TAG", "SOURCE", "IS_ENABLE") USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 NOLOGGING NOCOMPRESS LOGGING TABLESPACE "DATA_TABLESPACE" ENABLE
以上是一个给表创建主键的语句,由于含有 NOLOGGING 和 LOGGING 造成报以上错误。
解决办法有两种:
一、将报错的sql复制下来,把语句中含有 NOLOGGING 和 LOGGING 的关键词删掉,然后执行就能通过。(如果空表多,处理起来比较麻烦)
二、安装补丁:8795792补丁,补丁下载地址:http://download.csdn.net/download/wuhan8489/5886065(网友提供的,需要积分)
网友的一些解答: