什么是SQL Server擴(kuò)展函數(shù)呢?它實(shí)際上就是把C#或VB.NET的代碼拿到SQL Server上去執(zhí)行。反過來思考,那就是當(dāng)你想對表數(shù)據(jù)進(jìn)行比較復(fù)雜的邏輯處理時(shí),寫SQL又太麻煩,那么你就可以是否可以通過SQLCLR來解決這個(gè)問題了。下面是我摘自wikipedia對SQLCLR的解釋。
SQL CLR (SQL Common Language Runtime) 是自 SQL Server 2005 才出現(xiàn)的新功能,它將.NET Framework中的CLR服務(wù)注入到 SQL Server 中,讓 SQL Server 的部份數(shù)據(jù)庫對象可以使用 .NET Framework 的編程語言開發(fā)(目前只支持VB.NET和C#),包括預(yù)存程序、用戶自定義函數(shù)、觸發(fā)程序、用戶自定義型別以及用戶自定義匯總函數(shù)等功能。
幾個(gè)定義
Stored Procedures (SP:存儲(chǔ)過程)
User Defined Function ( UDF:用戶自定義函數(shù))
User Definied Types (UDT:用戶定義類型)
User Definied Aggregate(UDA:聚合函數(shù))
Triggers(觸發(fā)器)
(圖1:SQLCLR的架構(gòu)圖)
(圖2:SQLCLR的開發(fā)流程圖)
(圖3:SQLCLR的調(diào)試)