菜鸟学习MS SQL触发器。

在MS SQL数据库中,有一个非常方便的功能,就是“触发器”。

“触发器”的意思就是当数据库中某个表中的内容发生改变(增加/修改/删除)时,自动执行的一段SQL语句。

建立修改触发器的方法,就是在企业管理器中,在相应的表上点鼠标右键-》所有任务-》管理触发器。就可以进行建立或管理了。

下面弄二个例子看一下:

例子一:

--------------------------

CREATE TRIGGER [add_jilu] ON [dbo].[SentSmsTable]
FOR INSERT
AS
update  [dbo].[hf_kuaidi_lishicaxun]  set 货物状态=3
from inserted
where  hf_kuaidi_lishicaxun.原始ID=inserted.RM1

--------------------------

上面的例子的意思是,触发器的名子是:[add_jilu],当表[dbo].[SentSmsTable] 发生改变时,进行以下的操作。

其中FOR后面是所产生的事件,此事件“INSERT ”为插入事件。

当此表中有插入事件发生时,就执行AS后面的操作。update后为标准的更新语句,注意表名前要加dbo.

这里需要特别说明的是from inserted这一句,其中“inserted”是表示由SQL自动生成的临时的表,其内容和所插入数据是一模一样的,可以理解为,所有条件都和原表是一样的。所以后面的where条件语句就可以以此为依据写了。当所要操作表中的“原始ID”和临时表中的“RM1“值相等时,进行更新操作。

 

例子二:

---------------------------

CREATE TRIGGER [inserter_jilu] ON [dbo].[SentSmsTable]
FOR INSERT
AS
insert into  dbo.hf_kuaidi_zhuangtai(原始ID,HHID,货物状态)   values('1','2',3)

===========================

前面讲的不再重复。当触发表中新增数据后,在另一个表中新增一行。

 

 

例子三:

------------------------------------------------

CREATE TRIGGER [inserter_jilu] ON [dbo].[hf_xuanchuan_path]
FOR INSERT
AS
insert into  dbo.biaoge(wz1,wz2)  select 图片名称,图片路径  from inserted

========================

在表hf_xuanchuan_path中建立这样名子为inserter_jilu的触发器,当在这个表中插入一个数据时,把插入的相应的数据直接复制到另一个表中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值