2014-09-25 19 views

回答

2

這是沒有直接關係到Pro * C。在Pro * C中發生了錯誤ORA-12841: Cannot alter the session parallel DML state within a transaction,因爲它已經執行了DML,而新的SQL * Plus會話沒有。移動COMMITALTER聲明應該可以解決問題。

由於與HemantķChitale和€$ H₪上的Oracle論壇:https://community.oracle.com/message/10002348

+0

謝謝。很棒的發現。我會嘗試把它放在程序中。 – ASelim 2014-09-25 17:38:06

0

是否確定尾隨分號​​3210是SQL語句的一部分?

通常它只是告訴sqlplus中的SQL語句在這裏結束,但分號不是SQL語法的一部分(除了PL/SQL)

+0

這是我寫這在sqlplus和PRO * C我只加EXEC SQL開頭所以分號是相當多無論如何。 – ASelim 2014-09-25 17:36:59

+0

我不確定Pro * C的執行是什麼。但是,如果它添加'BEGIN'和'END;',那麼你必須使用EXECUTE IMMEDIATE。 – ibre5041 2014-09-25 17:46:53

+0

您可以在Pro * c之前編寫純SQL語句,前面是EXEC SQL。 – ASelim 2014-09-25 17:52:49

相關問題