1樓:匿名使用者
其中username ,counter ,rolename 是傳入引數,傳入引數不能賦值,即第7、8行語句有問題,建議刪除。
建議在plsql工具中編輯,方便。
擴充套件資料
儲存過程(stored procedure)是在大型資料庫系統中,一組為了完成特定功能的sql 語句集,儲存在資料庫中,經過第一次編譯後再次呼叫不需要再次編譯,使用者通過指定儲存過程的名字並給出引數(如果該儲存過程帶有引數)來執行它。儲存過程是資料庫中的一個重要物件。
參考資料
2樓:隨o天
(username varchar2,counter int,rolename varchar2) 寫法,認為三個引數都 in 型別。in 型別引數是不能賦值的。例如:
rolename:='connect,resource'; username:='test';寫法是錯誤的。
寫成(username in out varchar2,counter int,rolename in out varchar2)這樣,允許賦值。
oracle在儲存過程中定義遊標時出現錯誤:pls-00103: 出現符號 "cursor" 錯誤。
3樓:
呃,還真沒見過這個定義遊標的,遊標的定義不是cursor cur_name [parameter_name datatype,...] is select_statement;在遊標的定義中插入判斷,語法有問題吧。
你可以先建臨時表將不同情況的資料先插入進去,然後用遊標取數。或者用with as 關鍵字試試
oracle儲存過程中提示 錯誤:pls-00103: 出現符號 "for"在需要下列之一時
oracle 儲存過程錯誤怎麼檢視
4樓:智者總要千慮
可用第三方工具檢查錯誤。
如以下儲存過程:
其中第六行故意少寫了一個分號。
然後執行後,會提示完成,這時可以去左邊的樹中找到這個儲存過程,顯示是有個紅叉的。
這時,可以右鍵,選擇編輯。
然後開啟頁面的最下方會顯示如下資訊。
此時滑鼠雙擊資訊的那一行,會在上方儲存過程中以特殊顏色顯示,這就說明,有特殊顏色的位置有錯誤,可以根據ora-00933的錯誤號查詢錯誤原因,並加以修改。
現在,如果可以後邊的逗號補上,點執行,然後,下邊會顯示成功編譯且左邊的樹紅叉消除。
oracle儲存過程引數例項,oracle儲存過程引數例項
create or replace procedure bak table info tablename in varchar2 50 issql varchar2 200 out mes varchar2 200 begin sql select from tablename execute im...
oracle定義儲存過程時什麼時候需要使用
oracle 的儲存過程裡沒有declare的語法,觸發器和plsql塊才是declare 如果要定義變數,後面直接跟is的 create or replace procedure c ispara number begin end 你在寫儲存過程的時候是 create or replace p n...
怎麼把本地的儲存過程匯入oracle到資料庫
從伺服器將oracle資料庫匯出和匯入本地oracle資料庫中的方法 一 將伺服器上的oracle資料庫匯入到本地機子上 具體方法 在cmd模式下執行以下命令 exp username password 伺服器端資料庫id file c 檔名.dmp 例如下面 exp djyy djyy zhwx ...