今天在做实验时发现连着执行两边下面的SQL语句时,就报如下错误:
SQL> insert /*+ append */ into t01 nologging select * from dba_objects;
insert /*+ append */ into t01 nologging select * from dba_objects
*
ERROR at line 1:
ORA-12838: cannot read/modify an object after modifying it in parallel
这类语句不能连续执行,必须等上一个语句commit或者rollback后,才可以继续执行。
metalink的解释为:
Error:ORA 12838
Text:Cannot read/modify an object after a parallel modification on it in
the same transaction
---------------------------------------------------------------------------
Cause:Multi Statement Parallel DML restriction violated Action:Once a table has been modified in parallel, no more read or modification statements are allowed on that table, within the same transaction. Rewrite the transaction, or brake it up into two transactions.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25834554/viewspace-706465/,如需转载,请注明出处,否则将追究法律责任。