介紹
隨著SQL Server 2005中集成CLR,我們可以使用現代面向對象語言例如C#,VB.NET等來建立數據庫對象.
本文將會用簡單而必要的步驟來說明如何用C#寫托管觸發器.
顼目
我們將為托管的觸發器建立一個Visual Studio 2005 數據庫顼目
建立數據庫顼目
打開微軟Visual Studio 2005並且建立一個SQL Server 顼目
File->New->Project->Database
添加一個數據庫引用
現在將添加一個數據庫引用
添加觸發器
右擊顼目添加一個觸發器
The file Trigger1.cs:
添加下面的代碼到Trigger1.cs文件中,確保俘的數據庫中存在Person數據表,或者用你數據庫的表替換Person.
using System;
using System.Data;
using System.Data.SqlClient;
using Microsoft.SqlServer.Server;
public partial class Triggers
{
// Enter existing table or view for the target and uncomment the attribute line
[Microsoft.SqlServer.Server.SqlTrigger (Name="Trigger1", Target="Person", Event="FOR UPDATE")]
public static void Trigger1()
{
// Replace with your own code
SqlContext.Pipe.Send("Trigger FIRED");
}
}
部署觸發器
建立並且部署項目
Test the Trigger:
用下面的SQL語句來驗證CLR可以在你的SQ: Server中運行.
sp_configure 'clr enabled', 1;
GO
RECONFIGURE;
GO
現在在Person表上執行一個更新的指令.你會看到觸發器己經被觸發.