成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程

數(shù)據(jù)庫 SQL Server
SQL Server 2005調(diào)試存儲過程的功能在SQL Servr Management Studio和Visual Studio IDE內(nèi),使用這個技術(shù),我們可以在Visual Studio 2005中一步一步地調(diào)試存儲過程。本文我們就介紹這一過程,希望能夠?qū)δ兴鶐椭?/div>

Visual Studio 2005中調(diào)試SQL Server 2005存儲過程是本文我們主要要介紹的內(nèi)容,SQL Server 2005的所有版本都支持調(diào)試功能(包括Express版)。 但是,只有Team Systems和Professional版本的Visual Studio才能在IDE內(nèi)調(diào)試存儲過程。 簡而言之,如果你使用的是Visual Web Developer或者Visual Studio Standard版本的話,就不能在調(diào)試應(yīng)用程序的時候,一步一步地調(diào)試存儲過程或者進入到存儲過程內(nèi)部。

本文中,我將示例如何通過Visual Studio IDE調(diào)試SQL Server 2005的存儲過程。 我們既會看到如何在IDE中直接一步一步地調(diào)試存儲過程,也會看到如何給存儲過程設(shè)置斷點,并在調(diào)試應(yīng)用程序的時候進入到斷點處。 繼續(xù)往下看,你會知道得更多!

SQL Server調(diào)試的不同方法

現(xiàn)在的SQL Server 2005中,所有的數(shù)據(jù)庫調(diào)試都發(fā)生在Visual Studio IDE的內(nèi)部。 數(shù)據(jù)庫中的像存儲過程、觸發(fā)器和用戶自定義函數(shù)(UDFs)這樣的對象都是可以被調(diào)試的(譯者注:本文中提到的數(shù)據(jù)庫對象指的是存儲過程、觸發(fā)器或用戶自定義函數(shù))。 Visual Studio提供了3種調(diào)試這些數(shù)據(jù)庫對象的方法。 

數(shù)據(jù)庫中直接調(diào)試 – 在Visual Studio的服務(wù)器資源管理器中,右鍵單擊某個數(shù)據(jù)庫對象,然后選擇“單步執(zhí)行××”。 例如,當你右鍵單擊一個存儲過程的時候,彈出菜單中就會包含一個“單步執(zhí)行存儲過程”的選項。 

應(yīng)用程序調(diào)試 – 在數(shù)據(jù)庫對象內(nèi)設(shè)置斷點,然后通過應(yīng)用程序進行調(diào)試。 當相關(guān)的ASP.NET程序處于調(diào)試狀態(tài),并且調(diào)用了數(shù)據(jù)庫對象的時候,那么Visual Studio就會暫停在你所設(shè)置的斷點之處,從而允許我們一步一步地對T-SQL語句進行調(diào)試。 

在SQL Server項目中調(diào)試 – 在Visual Studio中可以創(chuàng)建一個SQL Server項目。 該項目中可以包含T-SQL和數(shù)據(jù)庫對象,并且這些數(shù)據(jù)庫對象都可以通過SQL Server項目本身來調(diào)試。

還有一個需要注意的地方就是,本文接下來所介紹的SQL Server調(diào)試是基于本地數(shù)據(jù)庫的。 當然,無論是本地數(shù)據(jù)庫還是遠程數(shù)據(jù)庫都是可以調(diào)試的。 本地數(shù)據(jù)庫指的是數(shù)據(jù)庫部署在本機上;遠程數(shù)據(jù)庫指的是數(shù)據(jù)庫部署在本機之外的機器上。 調(diào)試本地數(shù)據(jù)庫不需要做額外的設(shè)置, 但是調(diào)試遠程數(shù)據(jù)庫卻要復(fù)雜得多。

本文主要介紹的是如何在數(shù)據(jù)庫中直接調(diào)試,以及如何在ASP.NET程序中調(diào)試一個本地數(shù)據(jù)庫。 詳細點說就是,我們將調(diào)試App_Data文件夾下的SQL Server 2005 Express版本的數(shù)據(jù)庫,你可以在本文的結(jié)尾處下載該數(shù)據(jù)庫及示例程序。 在今后的其它文章中我們再研究如何在SQL Server項目中調(diào)試數(shù)據(jù)庫。 接下來,我給大家簡要講一講關(guān)于調(diào)試遠程數(shù)據(jù)庫的相關(guān)要點。

調(diào)試遠程數(shù)據(jù)庫

調(diào)試遠程數(shù)據(jù)庫最關(guān)鍵的要點在于,要確保啟動Visual Studio的Windows用戶與連接遠程數(shù)據(jù)庫的用戶是同一個用戶。 此外,該用戶必須隸屬于sysadmin角色。

例如,你可以在Windows的域中創(chuàng)建一個名為“TestDebug”的用戶。 然后使其可以登錄到遠程SQL Server數(shù)據(jù)庫,并將該用戶添加到sysadmin角色內(nèi)。 另外,你還需要使用“TestDebug”用戶來登錄你的電腦,或者確保使用runas.exe命令啟動的Visual Studio運行在“TestDebug”用戶下。 這樣,你就可以使用我們接下來演示的方法來調(diào)試了。

在數(shù)據(jù)庫中直接調(diào)試

在數(shù)據(jù)庫中直接調(diào)試是調(diào)試SQL Server 2005的存儲過程的最簡單的方法。 在Visual Stuido的IDE中你可以選擇單步執(zhí)行存儲過程,然后就可以一條語句一條語句地單步執(zhí)行了,同時你也可以檢查和修改存儲過程內(nèi)的T-SQL變量和參數(shù)。 本文結(jié)尾處提供下載的壓縮包中包括一個SQL Server 2005 Express版本的Northwind數(shù)據(jù)庫。 我在其中添加了一個名為“DoThings”的存儲過程,它有一個參數(shù)@CategoryID。 這是一個沒什么實用價值的存儲過程,但是它有很多的T-SQL語句和變量,另外還有一個參數(shù),這將使我們能更好地練習(xí)存儲過程的調(diào)試。

在服務(wù)器資源管理器中右鍵單擊“DoThings”存儲過程,然后選擇單步執(zhí)行存儲過程的選項。 (注意:SQL Server調(diào)試只有Team Systems和Professional版本的Visual Studio才支持。)

Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程

調(diào)試器啟動并且執(zhí)行存儲過程。 因為存儲過程“DoThings”需要一個傳入值給@CategoryID,所以會彈出一個對話框讓我們提供該值。 輸入1后單擊OK。

Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程

首先會執(zhí)行第一條語句。你可以選擇逐語句或逐過程進行調(diào)試(快捷鍵分別為F11和F10),也可以在監(jiān)視窗口中添加參數(shù)和變量。 存儲過程調(diào)試期間的截屏如下圖所示。 左側(cè)的黃色箭頭指的是當前執(zhí)行的語句。監(jiān)視窗口中顯示的是@CategoryID和@AvgPrice的類型和值。

Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程

存儲過程知行完后,結(jié)果會顯示在輸出窗口中。

你可以看到,在數(shù)據(jù)庫中直接調(diào)試存儲過程是非常簡單的,而且很好理解。 簡單到你只需要在服務(wù)器資源管理器中,右鍵單擊存儲過程,然后選擇單步執(zhí)行存儲過程即可。

在ASP.NET程序中調(diào)試數(shù)據(jù)庫對象

數(shù)據(jù)庫中直接調(diào)試可以讓我們非常簡單地在Visual Studio IDE里直接調(diào)試存儲過程。 但是,有的時候我們需要在ASP.NET程序調(diào)用相關(guān)的存儲過程的時候再調(diào)試。 這樣,當某個數(shù)據(jù)庫對象被調(diào)用的時候,我們就可以對其進行調(diào)試。

這種調(diào)試方法整合到了應(yīng)用程序的調(diào)試之中。 要使用它需要做如下幾步: 

給你想要調(diào)試的數(shù)據(jù)庫對象添加斷點。 數(shù)據(jù)庫對象只有在包含斷點的情況下才會被調(diào)試。 例如,一般情況下,應(yīng)用程序在調(diào)用存儲過程的時候,你是不能進入存儲過程內(nèi)部的, 如果你想調(diào)試存儲過程,那就必須要在存儲過程內(nèi)部設(shè)置斷點。

配置應(yīng)用程序,使其可以調(diào)試SQL Server對象。 這個比較容易,你只要選中一個復(fù)選框即可。 

禁用連接池。 連接池可以提高性能,它允許程序使用一個連接池中的某個空閑的連接來連接數(shù)據(jù)庫。 如果啟用它,就不能正確地調(diào)試了。 因為默認情況下是啟用連接池的,所以我們必須在設(shè)置連接字符串的時候禁用它。 (當你完成了在ASP.NET程序中調(diào)試SQL Server對象的工作之后,一定要記得重新啟用連接池)

接下來讓我們來看一看這幾個步驟具體該如何做。

首先,在Visual Studio中打開“DoThings”存儲過程,然后在“DECLARE @AvgPrice money”這句上設(shè)置斷點。 這樣第一步就完成了,接下來做第二步。

配置ASP.NET程序,以使其支持SQL Server的調(diào)試。右鍵單擊項目,然后選擇屬性。 此時將會彈出一個如下圖所示的對話框。 選擇啟動選項,然后在“調(diào)試器”部分中選中“SQL Server”復(fù)選框。 這樣就完成前兩步了,還差最后一步。

Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程

最后一步,我們需要修改連接字符串,使其禁用連接池。 這個任務(wù)相當簡單,你只要在你的連接字符串后加一個屬性“Pooling=false”即可。 假設(shè)你將連接字符串信息定義在了Web.config的<connectionString>節(jié)點里,那么修改后的連接字符串如下所示:

  1. <connectionStrings> 
  2. <add name="NorthwindConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\NORTHWND.MDF;  
  3. Integrated Security=True;User Instance=TruePooling=false" providerName="System.Data.SqlClient"/> 
  4. </connectionStrings>  

現(xiàn)在,我們已經(jīng)完成了這3個步驟。 為了演示如何調(diào)試,我們來創(chuàng)建一個調(diào)用“DoThings”存儲過程的ASP.NET頁。 本文結(jié)尾處你下載的Demo中就包含有這個頁面。 當你調(diào)試ASP.NET程序并且訪問了這個頁的時候,程序就會暫停在存儲過程中設(shè)置了斷點的地方。 然后,你就可以單步執(zhí)行存儲過程,并且可以在監(jiān)視窗口中查看和修改參數(shù)和變量的值,就像在數(shù)據(jù)庫中直接調(diào)試存儲過程一樣。

Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程

結(jié)論:

在SQL Server之前的版本中有一套用于調(diào)試存儲過程的獨立工具。 到了現(xiàn)在的SQL Server 2005,存儲過程、觸發(fā)器和用戶自定義函數(shù)(UDFs)都是通過Visual Studio Team System和Professional版本來調(diào)試的。 它給我們帶來了3種調(diào)試SQL Server的方法: 數(shù)據(jù)庫中直接調(diào)試、應(yīng)用程序調(diào)試和在SQL Server項目中調(diào)試。

關(guān)于在Visual Studio 2005中調(diào)試SQL Server 2005的存儲過程的相關(guān)操作就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@!

【編輯推薦】

  1. SQL Server 2005導(dǎo)入Oracle 10g的C#源碼
  2. SQL Server 2008快速清理日志文件的代碼
  3. SQL Server 2008數(shù)據(jù)庫中CDC的功能使用及說明
  4. SQL Server 2008阻止保存要求重新創(chuàng)建表的更改的問題
  5. SQL Server數(shù)據(jù)庫row_number() over() 來自動產(chǎn)生行號
責(zé)任編輯:趙鵬 來源: 博客園
相關(guān)推薦

2009-12-03 15:58:33

Visual Stud

2009-12-04 10:35:56

Visual Stud

2009-12-04 11:17:00

Visual Stud

2010-07-23 12:55:29

SQL Server

2010-04-07 13:13:19

Visual Stud

2009-12-03 11:04:54

Visual Stud

2011-07-14 13:38:34

2011-06-09 15:47:01

Qt Visual Stu

2009-09-17 19:19:17

CLR存儲過程

2009-11-24 09:53:49

Visual Stud

2010-06-28 13:45:16

SQL Server

2009-12-04 14:40:43

Visual Stud

2009-12-04 16:57:52

Visual Stud

2009-12-11 09:42:00

Visual Stud

2009-12-09 16:12:49

Visual Stud

2009-12-09 14:29:11

Visual Stud

2009-11-05 15:43:02

Visual Stud

2009-12-15 17:12:18

Visual Stud

2009-12-16 15:53:34

Visual Stud

2009-12-09 09:40:15

Visual Stud
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 久久一区 | 中文字幕在线观看日韩 | 国产精品九九 | 在线观看亚洲专区 | jizz在线看片 | 91精品午夜窝窝看片 | 久久a久久 | 黄在线免费观看 | 亚洲一区二区三区在线播放 | 亚洲一区二区三区在线 | 精品欧美二区 | 欧美日韩在线免费观看 | 中文字幕亚洲视频 | 日本成人在线观看网站 | 国产一级一级 | 久久大 | 一区二区三区四区视频 | 中文字幕亚洲精品 | 久久久久久久久久一区 | 在线观看国产视频 | 日日夜夜天天干 | 最新中文字幕久久 | 国产乱码久久久久久 | 九九热精品在线 | 2018天天干天天操 | 久久一级 | 日韩二 | 一区二区高清 | 午夜精品一区 | 精品国产欧美日韩不卡在线观看 | 色偷偷人人澡人人爽人人模 | 国产重口老太伦 | av网站免费| 久久久久久久久久久久久久av | 国产一级特黄真人毛片 | 日韩一区二区免费视频 | 久久久国产精品视频 | 日韩成人性视频 | 九九久久精品视频 | 久久av.com| 国产激情在线观看 |