SQLCLR(三)触发器

小二来根烟而

小二来根烟而

2016-02-19 13:49

下面是个超简单的SQLCLR(三)触发器教程,图老师小编精心挑选推荐,大家行行好,多给几个赞吧,小编吐血跪求~

  这一节比较简单了,主要是讲如何在SQLCLR下设计触发器。在SQLServer2005里分两种触发器,DDL和DML两种触发器。DDL触发器是响应CREATE、ALTER 和 DROP 开头的语句。我们常用的是DML触发器,这一类触发器响应当数据库中发生数据操作包括表或视图中修改数据的 INSERT 、UPDATE 或 DELETE 。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  对于.net来讲触发器也是方法,在上方标注[Microsoft.SqlServer.Server.SqlTrigger]标签(只我这样翻译)。

  我们看一个小例子

using System;
using System.Data;
using System.Data.Sql;
using Microsoft.SqlServer.Server;
using System.Data.SqlClient;

public partial class Triggers
{
    //Name触发器的名字
    //Target触发器对应表
    //Event可以是{ FOR | AFTER | INSTEAD OF } { [ INSERT ] [ , ] [ UPDATE ] [ , ] [ DELETE ] }
    [Microsoft.SqlServer.Server.SqlTrigger(Name = "NameInfoTrigger", Target = "NameInfo", Event = "FOR UPDATE")]
    public static void GetChange()
    {
        using (SqlConnection cn = new SqlConnection())
        {
            cn.ConnectionString = "context connection=true";
            cn.Open();
            using (SqlCommand cmd = cn.CreateCommand())
            {
                cmd.CommandText = "insert into ChangeHistory select b.name + '-' + a.name,getdate() from INSERTED a JOIN DELETED b ON a.id = b.id";
                SqlContext.Pipe.ExecuteAndSend(cmd);
            }
        }
    }
}

  右键部署

  数据库里的两张表

  我执行两条UPDATE语句

update [NameInfo] set [name]='David' where id=1
update [nameinfo] set [name]='Fan' where id=2

  结果

  再执行两条

update [NameInfo] set [name]='*David*' where id=1
update [nameinfo] set [name]='*Fan*' where id=2

  再看结果

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

  题外话:上午比较不忙,随手写了第三篇。都这个时候了公司领导层还在想搞什么视频分享,国内的视频分享类网站已经倒了一批又一批了,仅有一些苟活于世,表面大红大紫的日子也未必好过,VC哪能那么容易就掏钱出来给你烧,哎!最近比较郁闷,忙完手上这点活,想换份工作了。

展开更多 50%)
分享

猜你喜欢

SQLCLR(三)触发器

编程语言 网络编程
SQLCLR(三)触发器

MySQL 5.0 触发器

MySQL mysql数据库
MySQL 5.0 触发器

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

深入了解触发器

电脑入门
深入了解触发器

oracle 触发器 学习笔记

编程语言 网络编程
oracle 触发器 学习笔记

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

触发器基础知识

电脑入门
触发器基础知识

PPT触发器怎么用

电脑入门
PPT触发器怎么用

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

SQL存储过程中传入参数实现任意字段排序

SQL存储过程中传入参数实现任意字段排序

基于jquery.Jcrop的头像编辑器

基于jquery.Jcrop的头像编辑器
下拉加载更多内容 ↓