SQL数据库触发器
发布网友
发布时间:2022-04-09 23:23
我来回答
共3个回答
热心网友
时间:2022-04-10 00:53
if OBJECT_ID('触发器名1','TR') is not null
drop TRIGGER 触发器名1
GO
CREATE TRIGGER 触发器名1 ON B
AFTER INSERT
AS
BEGIN
update A set A.13=A.13+inserted.23 from A,inserted where A.11=inserted.21 and A.12=inserted.22
END
GO
if OBJECT_ID('触发器名2','TR') is not null
drop TRIGGER 触发器名2
GO
CREATE TRIGGER 触发器名2 ON C
AFTER INSERT
AS
BEGIN
update A set A.13=A.13-inserted.23 from A,inserted where A.11=inserted.31 and A.12=inserted.32
END
GO
你试试看行不行
热心网友
时间:2022-04-10 02:11
在表B、C各建立一个触发器可实现功能(for insert只在新增数据触发
for insert,update,delete在新增修改删除数据都会触发,插入的数据都可以在inserted表查到删除的数据都在deleted,如果是更新则会在deleted、inserted都能查到数据,表结构跟要操作的表结构完全一致)
--如下触发器是在B表插入数据时候设置 13 = 13+23
create trigger tr_b
on b
for insert
begin
update A set a.13 = a.13 + b.23
from a,b where a.11 = b.21 and a.12 = b.12
end
如下触发器是在C表插入数据时候设置 13 = 13 - 33
create trigger tr_c
on c
for insert
begin
update A set a.13 = a.13 - c.23
from a,c where a.11 = c.31and a.12 = c.32
end
热心网友
时间:2022-04-10 03:45
你的意思是。。你压根儿不会写触发器,
让别人从头帮你写一个?