更新 删除 添加触发器 mysql_sql server添加、更新、删除触发器的例子

本文介绍了在SQL Server中使用触发器进行数据同步的方法,包括插入、更新和删除记录的触发器示例。当在DN_user表上执行相应操作时,触发器会将信息同步到ZWUserSysc表。提醒在大数据量时谨慎使用触发器,以避免性能影响。
摘要由CSDN通过智能技术生成

在sql server中,使用触发器大有益处:

比如同步更新数据到某个表等。

不过,在数据量非常大时,建议不要使用触发器,因为会带来严重的性能损失。

下面我们学习下使用sql触发器的应用。

主要包括:

inserted 一个是deleted

inserted表示insert或update的新值集合

deleted 是update时的旧值或要删除的值集合

例1:插入记录触发器

代码示例:

/***

检测插入的触发器,当新建用户时,

会将用户的信息拷入ZWUserSysc以便同步

****/

CREATE TRIGGER Trg_ZWTLog_Insert

ON [DN_user]

for Insert

AS

begin

declare @id varchar(50)

declare @Name varchar(50)

declare @LogonName varchar(50)

declare @Password varchar(50)

select @id=id, @Name=name,@LogonName=LogonNm, @password=password from  inserted

insert into ZWUserSysc (ID,Name,LogonNm,Password,status) values (@id,@Name,@LogonName,@password,'I')

end

例2,更新记录触发器

代码示例:

/***

检测更新的触发器,当有用户修改了自己的密码,

会将用户的信息拷入ZWUserSysc以便同步

***/

CREATE TRIGGER Trg_ZWTLog_UPDATE

ON [DN_user]

for UPDATE

AS

begin

declare @id varchar(50)

declare @Name varchar(50)

declare @LogonName varchar(50)

declare @Password varchar(50)

select @id=id, @Name=name,@LogonName=LogonNm, @password=password from  inserted

insert into ZWUserSysc (ID,Name,LogonNm,Password,status) values (@id,@Name,@LogonName,@password,'U')

end

GO

例3,删除记录触发器

代码示例:

/***

检测删除的触发器,当用户被删除时,

会将用户的信息拷入ZWUserSysc以便同步

***/

CREATE TRIGGER Trg_ZWTLog_Delete

ON [DN_user]

for Delete

AS

begin

declare @id varchar(50)

declare @Name varchar(50)

declare @LogonName varchar(50)

declare @Password varchar(50)

select @id=id, @Name=name,@LogonName=LogonNm, @password=password from  Deleted

insert into ZWUserSysc (ID,Name,LogonNm,Password,status) values (@id,@Name,@LogonName,@password,'D')

end

GO

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值