SQL Server存儲(chǔ)過(guò)程的單步調(diào)試
SQL Server存儲(chǔ)過(guò)程相信大家都接觸過(guò),下面就教您如何實(shí)現(xiàn)SQL Server存儲(chǔ)過(guò)程的單步調(diào)試,希望可以讓您對(duì)SQL Server存儲(chǔ)過(guò)程有更深的認(rèn)識(shí)。
1)調(diào)試
在SQL Server的SQL Query Analyzer(查詢分析器)中,打開(kāi)Object Brower(F8),在左邊的列表中選擇一數(shù)據(jù)庫(kù),展開(kāi)Stored Procedures,然后選擇要調(diào)試的存儲(chǔ)過(guò)程(或任意一個(gè)存儲(chǔ)過(guò)程),按右鍵,點(diǎn)擊“Debug”,則彈出Debug Procedure對(duì)話框,顯示該存儲(chǔ)過(guò)程的參數(shù)(可在Procedures列表中選擇其他要調(diào)試的存儲(chǔ)過(guò)程),為參數(shù)輸入初始值,點(diǎn)擊“Execute”按鈕,進(jìn)入Debug窗口;可使用上面一排按鈕或其對(duì)應(yīng)的快捷鍵對(duì)該存儲(chǔ)過(guò)程進(jìn)行“執(zhí)行”“設(shè)斷點(diǎn)”“取消斷點(diǎn)”“單步跟蹤”等操作;窗口下方是參數(shù)列表,第一個(gè)是自定義參數(shù)變量列表,在Debug的過(guò)程中顯示全局變量和局部變量的值的變化,可對(duì)參數(shù)列表中該存儲(chǔ)過(guò)程的參數(shù)初值進(jìn)行修改,再重新調(diào)試;第二個(gè)列表是系統(tǒng)變量,可自行增加,如添加“@@Error”“@@RowCount”,觀看其值的變化,其值不能手工修改。第三個(gè)列表是CallStack,暫時(shí)不知道怎么用。在參數(shù)列表中,不能直接把User_Name()、GetDate()等函數(shù)直接放到參數(shù)列表中跟蹤,要把它們賦值予自定義變量進(jìn)行查看。
大家可連接Pivot的SQL Server進(jìn)行嘗試,使用本機(jī)DB系統(tǒng)如果不行,則需要用Administrator登錄本機(jī),然后在企業(yè)管理器中,在本機(jī)的SQL Server Registration上點(diǎn)擊右鍵,點(diǎn)“屬性”,選擇“Security”,選擇“This account”,輸入Administrator和密碼,確定之。
2)SQL Server存儲(chǔ)過(guò)程單步調(diào)試
具體步驟如下:
1、將服務(wù)器【身份驗(yàn)證】屬性設(shè)置成【混合模式】(window與sql身份驗(yàn)證)
2、在【控制面板】中打開(kāi)【服務(wù)】將【MSSQLSERVER】服務(wù)打開(kāi)【屬性】,選擇【登錄】頁(yè)面,將登錄身份設(shè)置成服務(wù)器本地帳號(hào)和該帳號(hào)密碼,如administrator,密碼123;
3、重新啟動(dòng)sqlserver服務(wù),此時(shí)的服務(wù)指的是【SQL服務(wù)管理器】中的SQL SERVER服務(wù);
假設(shè)【帳號(hào)】設(shè)置為administrator
此時(shí)達(dá)到的效果是:服務(wù)器本地帳號(hào)administrator與客戶端上的administrator(并且該帳號(hào)的密碼要與服務(wù)器密碼相同)可以通過(guò)【查詢分析器】進(jìn)行調(diào)試;
如果想讓【其他帳號(hào)】也能夠調(diào)試,那么還需要如下設(shè)置:
1、在【服務(wù)器】上運(yùn)行dcomcnfg.exe;
2、在【默認(rèn)安全機(jī)制】中【默認(rèn)訪問(wèn)權(quán)限】右邊點(diǎn)擊【編輯默認(rèn)值】選擇允許調(diào)試的帳號(hào)類型,如users用戶類型,sample帳號(hào)有包含users組;
3、重新啟動(dòng)sqlserver服務(wù);
3、在客戶端上創(chuàng)建與服務(wù)帳號(hào)密碼一樣的用戶,如sample;
做到這步就可以通過(guò)查詢分析器的調(diào)試功能進(jìn)行單步調(diào)試了
【編輯推薦】