利用 Common Language Runtime (CLR) 整合建置資料庫物件
適用於:SQL Server
您可以使用 SQL Server與 common Language Runtime (CLR) .NET Framework 整合來建置資料庫物件。 在 Microsoft SQL Server 內執行的 Managed 程式碼稱為「CLR 常式」。這些常式包括:
純量值的使用者定義函數 (純量 UDF)
資料表值使用者定義函數 (TVF)
使用者定義程序 (UDP)
使用者定義觸發程序
CLR 常式在 Managed 程式碼中包含三個相同的結構。 它們會對應至類別的 Microsoft Visual Basic .NET) 方法中共用的公用靜態 (。 除了常式之外,使用者定義型別 (UDT) 和使用者定義彙總函式也可以使用 .NET Framework 來定義。 UDT 和使用者定義彙總都會對應到整個 .NET Framework 類別。
每個類型的.NET Framework常式都有 Transact-SQL 宣告,而且可以在 transact-SQL 對等專案SQL Server的任何位置使用。 例如,純量 UDF 可以在任何純量運算式中使用。 TVF 可以在任何 FROM 子句中使用。 程序可以在 EXEC 陳述式中叫用,或從用戶端應用程式叫用。
注意
Common Language Runtime 上的 CLR 物件 (使用者定義函數、使用者定義類型或觸發程序) 可以在多個執行緒上執行 (平行計畫),如果查詢最佳化工具判定這是有幫助的。 不過,如果使用者定義函數存取資料,則執行將會在序列計畫上。 在 SQL Server 2008 之前的伺服器版本上執行時, (10.0.x) ,如果使用者定義函數包含 LOB 參數或傳回值,則執行也必須在序列計畫上。
下表列出此章節所涵蓋的主題。
CLR 整合使用者入門
提供使用 CLR 與 SQL Server 整合來編譯物件所需的程式庫和命名空間的簡短概觀。 包含範例 "Hello World" CLR 預存程序。
支援的 .NET Framework 程式庫
提供 CLR 整合支援之 .NET Framework 程式庫的相關資訊。
CLR 整合程式設計模型限制
提供 CLR 整合程式設計模型限制的相關資訊。
.NET Framework 的 SQL Server 資料類型
SQL Server資料類型及其.NET Framework對等專案的概觀。
CLR 整合自訂屬性的概觀
提供 CLR 整合自訂屬性的相關資訊。
CLR 使用者定義函式
描述如何實作與使用各種類型的 CLR 函數:資料表值函式、純量函數,以及使用者定義彙總函式。
CLR 使用者定義類型
描述如何實作及使用 CLR 使用者定義型別。
CLR 預存程序
描述如何實作及使用 CLR 預存程序。
CLR 觸發程序
描述如何實作及使用 CLR 觸發程序。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應