帮忙创建个MSSQL触发器

发布网友 发布时间:2022-04-20 03:02

我来回答

2个回答

热心网友 时间:2023-09-05 21:08

if exists(select * from sysobjects where name='tg_update_a')
drop trigger tg_update_a
go
create trigger tg_update_a
on 你的表名   -- 改成你的表名
for update
as
declare @id int   --把id改成你这个表里的标识列的列名,如果类型不一样的话,把int类型也改一下。。
select @id = id from inserted   
if((select a from inserted where id = @id)<0)
    update cardinfo set a=0 where id = @id

--where里的id不要的话,就是把你a字段内的每一行数据都更改成0.

热心网友 时间:2023-09-05 21:08

create trigger tr
on table_name
after insert
as
begin
if update(a)
if exists ( select 1 from inserted where a < 0 )
update table_name set a = 0
from table_name a join inserted b on a.id = b.id
end追问我试过了,你这个触发器,可以成功创建,但是却没有效果啊。我更新的时候还是可以出现负数。不过谢谢你。

追答触发条件写错了,应该 是写 after update 。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com