我嘗試使用下面的C#代碼來執行一些SQL:ORA-00933:運行時創建序列時,SQL命令無法正常結束命令
IDbCommand objOracleCommand = CreateCommand(commandPart, connection, transaction);
objOracleCommand.ExecuteNonQuery();
我取回一個「ORA-00933:SQL命令未正確結束「錯誤。
commandPart是一個字符串,它看起來像:
CREATE SEQUENCE seq_1
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOMINVALUE
NOCACHE
NOCYCLE
NOORDER
CREATE SEQUENCE seq_2 START WITH 1 INCREMENT BY 1
的commandPart實際上正在從一個文本文件中讀取。原來的SQL有分號像這樣:
CREATE SEQUENCE seq_1
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOMINVALUE
NOCACHE
NOCYCLE
NOORDER;
CREATE SEQUENCE seq_2 START WITH 1 INCREMENT BY 1;
這個原始的片斷(用分號)將運行在SQL Developer中就好了。如果我通過C#運行原始代碼段,則會得到「ora-00911:無效字符」。有任何想法嗎?
感謝, 埃裏克
嘗試在NOORDER後放一個分號。如果這不能解決它,請嘗試分離兩個語句,並一次執行一個語句。 –