天天看點

如何調試oracle,sqlserver存儲過程

調試oracle存儲過程

環境: win2003 server + oracle9i + pl/sql developer 7

調試方法:

1 在pl/sql developer 裡右擊要調試的存儲過程,選擇"添加調試資訊"指令

2 如果存儲過程沒有文法錯誤,右擊存儲過程,選擇"測試"指令

3 在"測試視窗"中安f9,調試(注意如果有輸入參數的話,要先給各個參數指派)

4 "ctrl + n"單步調試,調試過程中,将變量名添加到現面的變量清單裡按Enter鍵,或者将滑鼠放到某個變量的上面,就會看到該變量的值了

就像在vc裡調試一樣

調試sql server存儲過程

環境: win 2003 server + sql server 2000(帶查詢分析器 啊) 

1 打開查詢分析器

2 選中要調試的存儲過程,右擊"調試"

3 輸入參數,如果有的話

4 "執行", 哇,簡直就和vc的調試界面一個樣,(再次對微軟進行點名表揚啊^_^)剩下的就不用說了吧

1)調試

在sql server的sql query analyzer(查詢分析器)中,打開object brower(f8),在左邊的清單中選擇一資料庫,展開stored procedures,然後選擇要調試的存儲過程(或任意一個存儲過程),按右鍵,點選“debug”,則彈出debug procedure對話框,顯示該存儲過程的參數(可在procedures清單中選擇其他要調試的存儲過程),為參數輸入初始值,點選 “execute”按鈕,進入debug視窗;可使用上面一排按鈕或其對應的快捷鍵對該存儲過程進行“執行”“設斷點”“取消斷點”“單步跟蹤”等操作; 視窗下方是參數清單,第一個是自定義參數變量清單,在debug的過程中顯示全局變量和局部變量的值的變化,可對參數清單中該存儲過程的參數初值進行修 改,再重新調試;第二個清單是系統變量,可自行增加,如添加“@@error”“@@rowcount”,觀看其值的變化,其值不能手工修改。第三個清單 是callstack,暫時不知道怎麼用。在參數清單中,不能直接把user_name()、getdate()等函數直接放到參數清單中跟蹤,要把它們 指派予自定義變量進行檢視。

大家可連接配接pivot的sql server進行嘗試,使用本機db系統如果不行,則需要用administrator登入本機,然後在企業管理器中,在本機的sql server registration上點選右鍵,點“屬性”,選擇“security”,選擇“this account”,輸入administrator和密碼,确定之。

2)sql server存儲過程單步調試

具體步驟如下:

1、将伺服器【身份驗證】屬性設定成【混合模式】(window與sql身份驗證)

2、在【控制台】中打開【服務】将【mssqlserver】服務打開【屬性】,選擇【登入】頁面,将登入身份設定成伺服器本地帳号和該帳号密碼,如administrator,密碼123;

3、重新啟動sqlserver服務,此時的服務指的是【sql服務管理器】中的sql server服務;

假設【帳号】設定為administrator

此時達到的效果是:伺服器本地帳号administrator與用戶端上的administrator(并且該帳号的密碼要與伺服器密碼相同)可以通過【查詢分析器】進行調試;

如果想讓【其他帳号】也能夠調試,那麼還需要如下設定:

1、在【伺服器】上運作dcomcnfg.exe;

2、在【預設安全機制】中【預設通路權限】右邊點選【編輯預設值】選擇允許調試的帳号類型,如users使用者類型,sample帳号有包含users組;

3、重新啟動sqlserver服務;

3、在用戶端上建立與服務帳号密碼一樣的使用者,如sample;

做到這步就可以通過查詢分析器的調試功能進行單步調試了