【dbForge Studio for MySQL入門教程】如何調(diào)試觸發(fā)器
此示例顯示如何在dbForge Studio for MySQL中調(diào)試觸發(fā)器。使用提供的腳本在測試數(shù)據(jù)庫中創(chuàng)建示例對象。
創(chuàng)建樣本觸發(fā)器
使用下面的腳本創(chuàng)建ScheduleDetail 觸發(fā)器,以便在插入的數(shù)據(jù)包含NULL時生成錯誤消息。

調(diào)試觸發(fā)器
要調(diào)試MySQL觸發(fā)器:
1. 在Database Explorer中,選擇您的測試數(shù)據(jù)庫。
2. 展開Triggers文件夾,然后雙擊ScheduleDetail觸發(fā)器將其打開。
3. 將當前視圖從Main更改為SQL。
注意:打開觸發(fā)器時,主視圖設置為默認值。您無法在此視圖中插入斷點。
4. 設置觸發(fā)器的斷點。左鍵單擊SET語句旁邊的灰色邊距,在觸發(fā)器中設置斷點。此步驟是強制性的:如果您未在觸發(fā)器中設置斷點,則在嘗試單步執(zhí)行時將跳過其代碼。
5. 展開Procedures文件夾,然后雙擊FillSchedule過程將其打開。
6. 為將觸發(fā)觸發(fā)器的存儲過程設置斷點。左鍵單擊INSERT INTO schedule_list語句旁邊的灰色邊距。

7. 單擊“Start Debugging”,然后輸入該過程的輸入?yún)?shù)。
8. 使用F11鍵或 Step Into按鈕逐步執(zhí)行代碼,或按CTRL + F5直接移動到斷點。在INSERT INTO schedule_list語句中,再次按F11時,您將進入觸發(fā)器。

9. 逐步執(zhí)行觸發(fā)器,直到退出到存儲過程,然后繼續(xù)執(zhí)行。

調(diào)用堆棧窗口
“ Call Stack”窗口中有兩個數(shù)據(jù)庫對象:ScheduleDetail觸發(fā)器和FillSchedule過程。您可能會注意到ScheduleDetail觸發(fā)器旁邊的黃色箭頭,它標識了執(zhí)行指針當前所在的堆棧幀。

您可以通過雙擊“ Call Stack ”窗口中的過程返回到過程源代碼。

一個綠色箭頭表示您已回踩已經(jīng)稱為觸發(fā)父代碼。
