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

类别:.NET开发 点击:0 评论:0 推荐:

第一步:在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
       

 

本文地址:http://com.8s8s.com/it/it42387.htm