1. sql触发器怎样更新数据
--创建需触发的表
create table cfq(
a int,
b int
)
--创建触发器,监视该表
CREATE TRIGGER t_cfq ON dbo.cfq
for INSERT, UPDATE, DELETE
AS
begin
set nocount off
declare @a int
select @a=a from cfq
update cfq set b=@a where a=@a
end
--触动触发器
insert into cfq(a,b) select 2,null
insert into cfq(a,b) select 3,null
select * from cfq
所得结果
a b
2 2
3 3
2. sql server 写一个触发器指定字段更新才触发
createtriggertest
on表一
afterupdate
asbegin
updatebsetb.字段4=a.字段2,b.字段5=a.字段3from表二b,insertedawherea.表一和表二的关联字段=b.表一和表二的关联字段andb.字段5=1
end
点这个地方就能私聊,加一下求求
3. SQL update更新多个表字段列触发器
设A表有ID为主键
create trigger Myup
on A表
for update
as
if update(name)
begin
update B set NAME=inserted.NAME where exists(select * from inserted inner join deleted on inserted.ID=deleted.ID where deleted.name=B.NAME)
update C set NAME1=inserted.NAME where exists(select * from inserted inner join deleted on inserted.ID=deleted.ID where deleted.name=C.NAME1)
update D set NAME=inserted.NAME where exists(select * from inserted inner join deleted on inserted.ID=deleted.ID where deleted.name=D.NAME)
end
可以满足批更新操作