t-sql 触发器

来源:百度知道 编辑:UC知道 时间:2024/06/14 12:47:24
create trigger tRejectRequest
on tblleave for update
as
if ((select status from inserted)='以取消')
begin
update tblemployee set vacationremain=vacationremain-(select hours from inserted)
end

这个个对 请帮我改下

create trigger tRejectRequest
on tblleave for update
as
declare @status varchar(500),@hours int
set @status = (select status from inserted)
set @hours = (select hours from inserted)
if (@status ='以取消')
begin
update tblemployee set vacationremain = vacationremain - @hours where ……
--update的时候你可能需要加条件吧!
end

我也关注一下

你总要把字段说明一下,表也说明一下
两个表tblleave、tblemployee
字段vacationremain、hours\status????

从语法上来看
if ((select status from inserted)='以取消') 这句是错的

='以取消'前应该有(where 字段='以取消')
if后应是isExists(...
还有最后应该有个Go
update触发器应该是先deleted再inserted,你这两个临时表用对了么???