Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So aktualisieren Sie das eingefügte Feld im Trigger

Sie würden so etwas brauchen:

CREATE TRIGGER [Add_LTD] on dbo.Company
AFTER INSERT AS
   UPDATE dbo.Company
   SET Name = Name + ' LTD'
   FROM Inserted i
   WHERE dbo.Company.CompanyID = i.CompanyID
     AND Name NOT LIKE '% LTD'

Sie müssen die Zeilen in Inserted verbinden zu Ihrer zugrunde liegenden Tabelle (um nur die neu eingefügten Zeilen zu aktualisieren), und der beste Weg, dies zu tun, ist die Verwendung Ihres Primärschlüssels (so etwas wie eine CompanyID ), um dies zu erreichen.