创建CLR自定义触发器-C#

- 中国WEB开发者网络 (http://www.webasp.net)
-- 技术教程 (http://www.webasp.net/article/)
--- 创建CLR自定义触发器-C# (http://www.webasp.net/article/16/15514.htm)
-- 作者:未知
-- 发布日期: 2004-12-15
第一步:在Visual Studio 2005中编写代码
using System;
using System.Data;
using System.Data.Sql;
using System.Data.SqlServer;
using System.Data.SqlTypes;
public partial class Triggers
{
// Enter existing table or view for the target and uncomment the attribute line
// [SqlTrigger (Name="myTrigger", Target="Table1", Event="FOR UPDATE")]
public static void myTrigger()
{
SqlTriggerContext myTriggerContext = SqlContext.GetTriggerContext();
SqlPipe myPipe = SqlContext.GetPipe();
SqlCommand myCommand = SqlContext.GetCommand();
if (myTriggerContext.TriggerAction == TriggerAction.Insert)
{
myCommand.CommandText = "select * from spTestTbl";
}
myPipe.Execute(myCommand);
}
}

第二步:编译,部署(Build,Deploy)
第三步:注册到Yukon
语法:
CREATE TRIGGER trigger_name ON table_name FOR INSERT|UPDATE|DELETE
AS EXTERNAL NAME assembly_name.class_name.clr_trigger_name

示例:
CREATE TRIGGER myTrigger ON testTbl1 FOR INSERT
AS EXTERNAL NAME udt.Triggers.myTrigger



webasp.net