SQL触发器同步删除数据要怎么写?

SQL触发器同步删除数据要怎么写?,第1张

使用delete

触发器格式:

CREATE

trigger

tri_update

on

tablename

for

delete

as

begin

--sql

code

end

例:

CREATE

trigger

tri_update

on

tablename1

--触发的表名

for

delete

as

begin

declare

@del_id

varchar(40)

select

@del_id

=

id

from

deleted

--tablename1

中删除的数据保存在

deleted

delete

tablename2

where

id

=

@del_id

--同步删除tablename2中数据

end

//1.你创建一个insert触发器,每当数据插入的时候判断一下是不是有你要删除的数据。

//2.你还可以创建一个存储过程,然后再做一个作业任务,让 sql server 每多长时间删除一次。

下面给出的是第一种办法的insert触发器,不过这样每次insert 他都会执行一次,对数据库有点耗资源

create TRIGGER Trigger1

ON dbo.users

FOR insert

AS

Begin

declare @mintime datetime,@maxtime datetime

select @mintime =min(时间),@maxtime =max(时间) from Alarm

delete from Alarm where DATEDIFF(d,@mintime ,@maxtime )>=7

End


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6620004.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-25
下一篇 2023-03-25

发表评论

登录后才能评论

评论列表(0条)

保存