SQL Server2000存儲過程調試
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
今天寫了個存儲過程,在查詢分析器中測試報錯:
這樣的錯誤信息根本看不出錯在哪邊,只能用單步執(zhí)行來追蹤了。在查詢分析器對象瀏覽器中找到要調試的存儲過程,右鍵點擊選擇調試: 輸入各個參數(shù)的值后開始調試(鉤選自動回滾調試完畢后將回滾操作): 按F11單步執(zhí)行: 終于找到錯誤的位置了: 修改存儲過程,輸出@strSQL的值,才發(fā)現(xiàn)原來是聲明的時候設置@strSQL的長度為300,而拼接的SQL語句太長了,長出的部分被截斷才導致出錯,OK,將@strSQL長度增加,問題解決! 說明:如果在存儲過程中有SET NOCOUNT ON語句,在調試過程中應注釋掉,在本次調試過程中發(fā)現(xiàn)有SET NOCOUNT ON調試器遇錯會繼續(xù)執(zhí)行,也不報錯! 在SQL Server聯(lián)機叢書中說明:建議不要在生成服務器上使用 Transact-SQL 調試程序。在步驟執(zhí)行模式下,調試程序會鎖定其它進程所需的某些系統(tǒng)資源。 2008-07-31補充: 晚上在家里運行調試器失敗,提示: 引用內容 服務器: 消息 508,級別 16,狀態(tài) 1,過程 sp_sdidebug,行 1 [Microsoft][ODBC SQL Server Driver][SQL Server]無法連接到 LF-CBIXQUB2CZ5G 上的調試程序(錯誤 = 0x800401f3)。請確保已在 LF-CBIXQUB2CZ5G 上安裝并注冊了客戶端組件(如 SQLLE.DLL)。已禁用對 52 的調試。 百度了下,大都是說將MSSQLSERVER服務的登錄方式設置為一個windows帳戶或是將VS2003/2005安裝目錄中的sqlserver\mssdi98.dll覆蓋掉SQL Server2000安裝目錄中的Binn\mssdi98.dll,我試了均不成功,最終在一篇文章中看到說是SQL Server2000版本的問題,嘗試著將本機的8.00.194(RTM)升到8.00.2039(SP4),問題得以解決。 Microsoft SQL Server 2000 sp4下載:http://www.crsky.com/soft/5814.html 該文章在 2011/3/14 15:18:00 編輯過 |
關鍵字查詢
相關文章
正在查詢... |