用C#写托管触发器(翻译二)
http://www.c-sharpcorner.com/UploadFile/pk_khuman/ManagedTrigersUsingCSharp02202007230729PM/
ManagedTrigersUsingCSharp.aspx
介绍
随着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表上执行一个更新的指令.你会看到触发器己经被触发.
学习触发器