① 如何強行中止存儲過程的執行
找你的DBA把你這個session給KILL掉
② plsql調試存儲過程執行卡住
1、存儲過程中是否有 LOOP ?
如果有 的在end loop 添加 EXIT WHEN 游標名%NOTFOUND (意思是如果沒有這個游標,就跳出)
2、沒有loop 的話
手動停止掉當前的存儲過程吧。語句如下:
--先查運行的存儲過程sid
select /*rule*/ sid from v$access where object='存儲過程名'
--通過sid 找到serial
select sid ,serial#,paddr from v$session where sid='上一句查到的sid'
--kill 掉存儲過程
alter system kill session 'sid','serial#'
③ 求Toad for Oracle 使用教程
一、 Toad功能綜述
在Oracle應用程序的開發過程中,訪問資料庫對象和編寫SQL程序是一件乏味且耗費時間的工作,對資料庫進行日常管理也是需要很多SQL腳本才能完成的。Quest Software為此提供了高效的Oracle應用開發工具-Toad(Tools of Oracle Application Developers)。在Toad的新版本中,還加入了DBA模塊,可以幫助DBA完成許多日常管理工作。它最大的特點就是簡單易用,訪問速度快。使用Toad,我們可以通過一個圖形化的用戶界面快速訪問資料庫,完成復雜的SQL和PL/SQL代碼編輯和測試工作。Toad由Oracle開發專家專門為開發人員而設計,是一個功能強大、結構緊湊的專業化PL/SQL開發環境。
Toad 主要具有如下特點:
模式瀏覽:
模式瀏覽功能可以讓我們快速訪問數據字典,瀏覽資料庫中的表、索引、存儲過程。Toad 提供對資料庫的快速訪問,使用極為方便,用戶界面簡潔,結構安排合理。當我們點擊一個單獨的資料庫對象,Toad立即顯示此對象的詳細信息。例如,當我們點一個資料庫的表,所有和此表相關的索引、約束、存儲過程、SQL語句以及和其他表的相互引用關系都在同一界面顯示出來。為了簡化操作,用戶可以在瀏覽窗口操作資料庫對象。
SQL 編輯器:
SQL 編輯器的主要功能是編輯、運行和調整SQL語句。TOAD 的高級編輯窗口包括眾多的特性來提高開發人員編寫SQL語句的產品化程度。例如,簡單地生成代碼模板,在編寫SQL前自動發現包的內容和列的名字等等。
SQL編輯器包括一個編輯窗口和運行結果窗口,允許開發人員在編輯的過程中測試運行結果。SQL編輯器中不僅包括標準的編輯命令,也包括一些增強的功能,如快速查詢表中的欄位、將SQL語句的內容格式化等等。這個窗口可以處理大到4GB 的內容,對大的開發項目來說非常有用。便捷的書簽可以讓開發人員非常容易地找到相關位置。在運行結果窗口可提供用戶定義的配置功能,支持LONG 和LONG RAW列,可以將數據卸出到磁碟、列印數據、編輯數據等等。
存儲過程編輯器:
存儲過程編輯器的主要功能是編輯、編譯、測試、調試存儲過程和觸發器。TOAD提供語法標識、錯誤標識和其他很多易於使用的功能,如在彈出窗口顯示表名、列名和Oracle函數。和其他的 PL/SQL 編輯工具不同,TOAD 允許在一個文件中操作多個資料庫對象,可以編譯一個對象、編譯多個對象、編譯到當前游標、從游標開始編譯。在運行出現錯誤時,存儲過程停止到有問題的語句。用戶可以使用快捷方式或模板來快速編寫PL/SQL,也可以根據需要生成自己的模板。使用Toad可以非常方便地進行編輯工作,可如設置書簽、取消注釋、格式化SQL語句等等。
PL/SQL Debugger選項:
Toad 提供簡單易用的PL/SQL 調試功能,可以節省開發人員在大型項目中用於開發和測試的寶貴時間,提高應用開發的質量。在存儲過程開發的過程中,Toad可以逐行編輯、調試和運行代碼。運行時可以根據需要輸入參數,觀察相關參數的變化來檢查存儲過程的正確性。在調式過程中,Toad 可以通過窗口顯示所有的斷點、參數, 調用堆棧和輸出參數。使用Toad,非常容易檢測到存儲過程的錯誤,開發人員可以一步一步運行PL/SQL語句來識別問題。調試會話可以和其他程序會話同時進行。
SQLab Xpert Option:
幫助開發人員優化SQL,為他們提供各種優化模式下SQL執行計劃,並且能夠給出優化的建議,能夠比較各種模式下實際的SQL運行結果,幫助開發人員真正高速地開發高效地代碼。
Toad還可以外掛一些別的產品,比如PL/Formatter, RevealNet Knowledge Base , SQL Impact等,這些都能夠和Toad緊密集成,共同提供了一個完美的集成開發環境。新版本還新增加了DBA模塊,更加拓廣了Toad這個產品的適用范圍。
④ toad如何將執行時間的提示去掉,就是當執行數據過大想中斷時中斷不了,pl/sql可以直接斷掉鏈接,toad不行
toad如何實現多線程,像plsql developer那樣可以取消當前的操作:
安裝的時候有選項設置,如果未設置進入view-options-oracle-transactions,把第一個選項選上。
⑤ 存儲過程執行到某步時停止存儲過程。
想要當i等於10000時停下這個存儲過程,不再執行了。
if mod(i,1000)=0 then commit;
後面增加一句話
if i = 10000 then GOTO l_Finish;
end A;
前面增加一句話
<<l_Finish>>
⑥ 存儲過程在執行時,強制停掉資料庫進程後,事務會回滾嗎
首先要斷開所有對該資料庫的鏈接,才能強制還原
請參考
⑦ oracle10g資料庫中如果有一個存儲過程執行出錯(比如語法有問題),會影響整個資料庫的存儲過程停掉嗎
語法有問題程序編譯都過不去,程序無法運行何來存儲過程停掉?除非是邏輯錯誤或者數據異常引起錯誤。如果你加上了異常處理功能,可以捕捉到錯誤,不至於使程序停止運行。如果沒有異常處理,程序一定會停止運行,並顯示相關的錯誤信息。
⑧ 如何用Toad調試存儲過程,觸發器
1. 打開PL/SQL Developer如果 在機器上安裝了PL/SQL Developer的話,打開PL/SQL Developer界面輸入 用戶名,密碼和host名字,這個跟在程序中web.config中配置的完全相同,點擊確定 找到 需要調試的存儲過程所在的包(Package bodies),如PACK_ACTIVITY,點擊右鍵,在彈出菜單中選擇[查看],得到包中的所有存儲過程和他們的代碼. 2. 添加debug信息為了 能夠單步跟蹤存儲過程,需要為其所在的包添加debug信息,右鍵點擊需要調試的包,在彈出菜單中選中[添加調試信息].這樣 就為包體添加了調試信息。 3. 調 試存儲過程現在 所有的准備工作都做好了,可以調試跟蹤存儲過程了。選擇 需要調試的存儲過程,點擊右鍵,在彈出菜單中 選擇[測試],進去測試窗口.測試窗口中有為了測試該存儲過程自動所產生的代碼,當然你也可以自己另外加入和修改代碼,對於我們目前只是為了調試存儲過程, 自動生成的代碼已經足夠了。接著按照如下的步驟進行調試。(1)添加存儲過程所需要的參數,我們項目中的大多數存儲過程都是需要參數 的,參數可以在測試窗口右下部分輸入。如:GetPanNO_New需要一個輸入參數v_employeeid,我們輸入180,輸出參數是mycursor,是查看結果的,不需要輸入任何值。 (2)開始調試,點擊[調試]菜單->[開始](或者按F9),就進去調試模式了,程序開始停在begin這一行. (3)以後的調試過程跟我們熟悉的的調試過程就一樣了:運行(Ctrl+R)單步 進入(Ctrl+N)單步 跳過(Ctrl+O)單步 退出(Ctrl+T)或者 點擊debug工具條上的按扭:當按Ctrl+N進去存儲過程的源代碼中後 在這 個窗口中可以查看過程中的變數值和堆棧。 (4)調試運行完了後,可以查看結果如下(點擊mycursor變數旁邊的按鈕). 4. Tip 令人 比較郁悶的是我們項目中很多的存儲過程都是一個SELECT語句,不管這個SELECT語句多麼復雜(SELECT語句中有嵌套的子SELECT語句),它也只能作為一行代碼,單步跟蹤就沒有什麼意義了。