sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man uppdaterar infogat fält i trigger

Du skulle behöva något sånt här:

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'

Du måste ansluta till raderna i Inserted till din underliggande tabell (för att bara uppdatera de rader som nyligen har infogats), och det bästa sättet att göra detta är att använda din primära nyckel (något i stil med ett CompanyID ) för att uppnå detta.




  1. Oracle datapump impdp till fjärrserver

  2. oracle rad-konflikt som orsakar dödlägesfel i JMS-applikationen med hög genomströmning

  3. Hoppa över kolumn när du infogar i MySQL

  4. Hur man upptäcker UTF-8-tecken i en Latin1-kodad kolumn - MySQL