2012-09-18 80 views
3

我一直在使用PL/SQL爲Oracle數據庫創建軟件包,我試圖找到一個調試PL/SQL軟件包而不使用「put_line」命令的好方法,是否有人有一些好的有關如何在Toad或SQLPlus上成功調試PL/SQL包的提示?在Toad中調試PLSQL

+2

你看過蛤蟆內置的文檔嗎? (幫助 - >索引 - >關鍵字「調試」) – tbone

回答

11

根據蟾蜍版本,圖標和工具欄將有所不同,但過程是相同的:

  1. 確保「切換與調試編譯」選項打開
  2. 點擊「編譯「按鈕
      a。

      TOAD 9.7

      蟾蜍11.6:設置斷點

  3. 點擊

蟾蜍9.7 「與調試器執行PLSQL」

TOAD 11.6

+1

如何啓用「切換編譯調試」選項?我的圖標是灰色的... – sharkbait

+4

@sharkbait你將需要被授予數據庫權限,允許你進行調試。確切的特權取決於Oracle版本。 – wweicker

+1

謝謝;)@wweicker – sharkbait

1

首先,爲了能夠調試PL/SQL代碼,必須具有適當的數據庫特權才能進行調試。 (GRANT DEBUG CONNECT SESSION TO user)。如果你沒有被授予這個特權,你的DB工具(如Quest TOAD)甚至可能不會顯示調試選項,或者可能會禁用它。

enter image description here

其次,調試之前,所述代碼(過程,函數或封裝)它必須被預編譯進行調試。當使用調試選項編譯代碼時,編譯器會將其他數據插入編譯代碼中,以便在調試過程中停止在斷點上。 (使用Toggle compile with Debug打開調試選項並編譯您的代碼)在調試完成開發階段後,您應該重新編譯代碼而無需調試選項(關閉Toggle compile with Debug並編譯您的代碼)。

然後,您應該在您的代碼中插入調試斷點,並在執行期間在調試器中監視(變量)。

enter image description here

最後,你應該開始調試代碼,執行將停止在第一個斷點,並使用工具欄debugg你可以進入,單步跳過,運行光標......在你的代碼。

enter image description here