Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

aide du déclencheur du serveur sql - mise à jour de la même table

create trigger [dbo].[test] on [dbo].[invoice]
for insert
as
begin

update Invoice
  set Trader_Status = 'OPEN'
  where Invoice_Id in ( select Invoice_Id from inserted where Invoice_Status = 'PENDING' )

update Invoice
  set Trader_Status = 'BLOCKED'
  where Invoice_Id in ( select Invoice_Id from inserted where Invoice_Status = 'OVERDUE' )

end

Notez que cela gérera plus d'une ligne insérée par une seule instruction.