-
建立表為**select該錶應該存在於資料字典中,這樣才能建立表成功,你有乙個複雜的子查詢,比如count(*)作為samplid,資料庫怎麼知道samplid應該建立為int還是bigint? 建議您將動態語句拆分為兩個語句,乙個用於常規表建立語句,另乙個用於插入語句。
-
不需要用雙引號將列表括起來,使用雙引號表示列名與資料庫表中定義的列名大小寫一致。 此外,請檢查表語句中是否也使用了雙引號,如果是,請刪除雙引號。
-
你在這裡有值(hr、hr、hr
HR寫了兩次,所以這裡可能是錯誤的。
-
你的桌子上有這個嗎? 或者插入時,屬性不一致。
-
它應該是建立或替換! 此外,您的使用者是否具有 creaet 儲存過程的許可權?
-
如果它是表或其他東西,則取決於當前使用者是否有權訪問該物件,如果它是呼叫的儲存過程,請檢視儲存過程是否可以正確執行。
-
看看這個過程。
或者也許這不是許可權問題。
-
物件是否無效,是儲存過程還是什麼? **貼出來看看。
-
檢查許可權和物件是否正確編譯。
-
方法步驟。
1. 在大多數情況下,此錯誤是由引用不存在的列名引起的。 例如,select name from studtent 當 studeng 表中沒有 name 列時,將報告此錯誤。
2. 解決方法是確定資料庫中引用的列名是否與你自己的 SQL 中寫入的列名一致。 如果存在差異,請對其進行修改並重新測試,以解決問題。
3.對於某些工具生成的SQL,列表可能與預期不符,例如,某些工具生成的列名會有雙引號,這會導致此錯誤。 另請注意此情況。
-
...從錯誤來看,一定是問號錯誤。
雖然我對oracle了解不多,但是如果你是純SQL的話,一定不能在呼叫中使用輸出引數嗎? ,您應該宣告乙個數字或其他東西,並將該變數作為引數傳入。
如果你.........在程式中jdbc可以直接寫嗎? 但是您以後還需要 setstring 來替換它? ......
PS:不要使用call,只需使用begin....結束。
雖然我更喜歡你直接寫在神諭裡,但同志們說不能從寫法上排除。。。
-
呼叫是用開始結束進行的。
begininsertteacou('1400123','2013000012','北 1101','1-1','100000','2012-2013學年第一學期');
end;另外,你為什麼有乙個問號,就是這樣。
call insertteacou(?,'1400123','2013000012','北 1101','4-2','100000','2012-2013學年第一學期')
括號中的第乙個。
-
begininsertteacou(?,'1400123','2013000012','北 1101','4-2','100000','2012-2013學年第一學期');
end;無需致電
-
去掉declare是乙個語法問題,可以看一下create proc的語法,後面宣告的變數是不需要宣告的,語法是oracle規定的,如果不這樣寫,就不被識別了。
儲存器,也稱為儲存器,是一種由半導體技術製成的用於儲存資料的電子裝置。 電子電路的資料以二進位形式儲存,每個儲存單元稱為儲存元件或單元。 >>>More