❶ 如何實現sqlserver單步調試
1、將伺服器【身份驗證】屬性設置成【混合模式】(window與sql身份驗證)
2、在【控制面板】中打開【服務】將【MSSQLSERVER】服務打開【屬性】,選擇【登錄】頁面,將登錄身份設置成伺服器本地帳號和該帳號密碼,如administrator,密碼123;
3、重新啟動sqlserver服務,此時的服務指的是【SQL服務管理器】中的SQL Server服務;
假設【帳號】設置為administrator
此時達到的效果是:伺服器本地帳號administrator與客戶端上的administrator(並且該帳號的密碼要與伺服器密碼相同)可以通過【查詢分析器】進行調試;
如果想讓【其他帳號】也能夠調試,那麼還需要如下設置:
1、在【伺服器】上運行dcomcnfg.exe;
2、在【默認安全機制】中【默認訪問許可權】右邊點擊【編輯默認值】選擇允許調試的帳號類型,如users用戶類型,sample帳號有包含users組;
3、重新啟動sqlserver服務;
4、在客戶端上創建與服務帳號密碼一樣的用戶,如sample;
做到這步就可以通過查詢分析器的調試功能進行單步調試了。
註:第二步更改「啟動服務帳戶」,在第一次登錄之前,必須更改用戶密碼。
不然,event log:以當前密碼登錄的嘗試因下列錯誤將宣告失敗:
在第一次登錄之前,必須更改用戶密碼。
❷ 如何:創建和運行 CLR SQL Server 用戶定義的函數
部署成功後,可調用並執行用戶定義的函數。注意
在默認情況下,Microsoft
SQL
Server
中關閉了
公共語言運行庫
(CLR)
集成功能。必須啟用該功能才能使用
SQL
Server
項目項。若要啟用
CLR
集成,請使用
sp_configure
存儲過程
的「啟用
clr」選項。有關更多信息,請參見啟用
CLR
集成。注意顯示的對話框和菜單命令可能會與幫助中的描述不同,具體取決於您現用的設置或版本。若要更改設置,請在「工具」菜單上選擇「導入和導出設置」。有關更多信息,請參見
Visual
Studio
設置。
創建用戶定義的
SQL
Server
函數
使用Visual
Studio
建立和部署此函數
C++
示例在編譯時必須使用
/clr:safe
編譯器
選項。
對於Visual
Basic
和
Visual
C#,在「解決方案
資源管理器
」中,打開「TestScripts」文件夾,然後雙擊「Test.sql」文件,以打開它進行編輯。添加執行您的
用戶定義函數
的代碼。請參見下面的第二個示例。對於Visual
C++,在「解決方案資源管理器」中雙擊「debug.sql」文件,以打開它進行編輯。添加執行您的用戶定義函數的代碼。請參見下面的第二個示例。將用戶定義函數部署到
SQL
Server。有關更多信息,請參見如何:將
SQL
Server
項目項部署到
SQL
Server
中。按F5
通過在
SQL
Server
上執行用戶定義的函數來對其進行調試。下面的代碼示例創建用戶定義的將價格作為參數的
標量函數
addTax,添加
銷售稅
並返回價格和銷售稅的加和。創建該函數後,將其部署到
SQL
Server。有關更多信息,請參見如何:將
SQL
Server
項目項部署到
SQL
Server
中Visual
Basic
復制代碼
Imports
System.Data.SqlTypes
Imports
Microsoft.
SqlServer
.ServerPartial
Public
Class
UserDefinedFunctions
Public
Const
SALES_TAX
As
Double
=
0.086
_
Public
Shared
Function
addTax(ByVal
originalAmount
As
SqlDouble)
As
SqlDouble
Dim
taxAmount
As
SqlDouble
=
originalAmount
*
SALES_TAX
Return
originalAmount
+
taxAmount
End
FunctionEnd
ClassC#
復制代碼
using
System.Data.SqlTypes;
using
Microsoft.SqlServer.Server;public
partial
class
UserDefinedFunctions{public
const
double
SALES_TAX
=
.086;
[SqlFunction()]
public
static
SqlDouble
addTax(SqlDouble
originalAmount){SqlDouble
taxAmount
=
originalAmount
*
SALES_TAX;
return
originalAmount
+
taxAmount;}}C++
復制代碼
#include
"stdafx.h"#using
#using
#using
using
namespace
System;
using
namespace
System::Data;
using
namespace
System::Data::Sql;
using
namespace
System::Data::SqlTypes;
using
namespace
Microsoft::SqlServer::Server;//
In
order
to
debug
your
Aggregate,
add
the
following
to
your
debug.sql
file:////
SELECT
dbo.addTax(10)
//public
ref
class
UserDefinedFunctions{public:static
initonly
double
SALES_TAX
=
0.086;
[SqlFunction()]
static
SqlDouble
AddTax(SqlDouble
originalAmount){SqlDouble
taxAmount
=
originalAmount
*
SALES_TAX;
return
originalAmount
+
taxAmount;}};向您的項目中
TestScripts
文件夾中的
Test.sql(在
Visual
C++
中為
debug.sql)文件,添加用於測試用戶定義函數的代碼。例如,若要測試此函數,請使用查詢,如「SELECT
dbo.addTax(10)」。您應見到返回的值「10.86」。
復制代碼
❸ sqlserver存儲過程怎麼調試
SQL Server存儲過程相信大家都接觸過,下面就教您如何實現SQL Server存儲過程的單步調試,希望可以讓您對SQL Server存儲過程有更深的認識。
1)調試
在SQL Server的SQL Query Analyzer(查詢分析器)中,打開Object Brower(F8),在左邊的列表中選擇一資料庫,展開Stored Proceres,然後選擇要調試的存儲過程(或任意一個存儲過程),按右鍵,點擊「Debug」,則彈出Debug Procere對話框,顯示該存儲過程的參數(可在Proceres列表中選擇其他要調試的存儲過程),為參數輸入初始值,點擊「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;
做到這步就可以通過查詢分析器的調試功能進行單步調試了
❹ sqlserver存儲過程如何調用自定義函數
返回單個值的函數, 可以當變數用, 比如 select dbo.函數名(參數1, 參數2, ...) from ...where abc = dbo.函數名(參數1, 參數2...)
返回表的函數, 可以當數據表來使用, 比如 select * from dbo.函數名(參數1, 參數2, ...)
❺ sqlserver不能調用函數
sqlserver不能調用函數
sql server 自定義函數的使用 自定義函數 用戶定義自定義函數像內置函數一樣返回標量值,也可以將結果集用表格變數返回 用戶自定義函數的類型:
❻ sqlserver如何調試麻煩寫下全部詳細過程!
注意調試必須在本機進行,連接時用 . 也就是本地內存模式連,而不是tcp ip ,
你要開發代碼的話,
你寫程序代碼的話,用帶的那個sql press 最好,好調試人的代碼。
你調試資料庫的存儲過程,在sqlserver 的管理工具中最好是。
❼ sqlserver 函數怎麼調試
你想調試什麼函數,直接執行不久完了? 能出來值就正確,出不來值就不對啊,語法都很簡單的
❽ sql server的表函數怎麼調試
你好,
1.首先,sql裡面的函數是非常多的常用的有日期函數,字元函數等不知道你所說的是哪一種函數的調用。 2.就函數調用而言,是有很多的調用方法的,幾乎每個函數的調用方法和調用的意義都是不相同的。
3.舉例:比如 getdate() 這是一個函數,可以得到當年當月當日的系統時間精確到秒,如果你想查詢系統當前時間可一直在sql查詢編輯器中輸入: select getdate() 就可以了。
4.就sql函數的調用而言,可以在存儲過程中調用也可以在 T-SQL中調用。
希望對你有所幫助!
❾ sqlclr 怎麼調試 c#函數
VS2013 建SQL項目類型工程面建函數C#工程WS代理函數調用
SQL工程發布sqlserver sqlserver啟clr enable
函數SQL 函數高用即
❿ 如何在SQL Server 2008下輕松調試T-SQL語句和存儲過程
今天突然有同事問起,如何在sqlserver中調試存儲過程(我們公司使用的是sqlserver 2008 R2),猛地一看,和以前使用sqlserver 2000真的有很大的不同,我真暈了。
於是琢磨了一下。SQLSERVER 2005中不知因何去掉了很重要的DEBUGGER功能,要調試,必須要安裝VS2005專業版或者更高版本。非常不方便。
還好,SQLSERVER 2008中這個很重要而且方便的功能又回來了。
不過,SQLSERVER 2008的調試功能和SQL2000的方法差別很大。SQL2000是在查詢分析器中的對象瀏覽器中選中需要調試的存儲過程,右鍵----調試---輸入參數開始調試。
sqlserver2008中則完全不同,變成了必須要在SSMS中EXEC [PROCEDURE NAME] @VAR1,@VAR2,然後點綠色三角或者點菜單中的調試---啟動調試。然後點工具欄的最右邊的單步調試或者跳出等。下面的變數窗口和堆棧窗口等可以查看調試中變數等動態變化值。
sqlserver2008調試的要求和條件:如果在引擎所在的電腦或伺服器上調試,則只需要SA或者WINDOWS用戶登陸即可。如果是異地調試,則需要設置防火牆例外,增加SSMS和SQLSERVER.EXE為允許,增加135埠允許通過。
總之,SQL2008的調試比2000操作起來麻煩多了,要求也多了。剛開始感覺不如2000的好用,也可能是使用2000習慣了。習慣是可怕的,但是微軟是在不斷進步的...