Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách cập nhật trường đã chèn trong trình kích hoạt

Bạn sẽ cần một cái gì đó như thế này:

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'

Bạn cần nối các hàng trong Inserted vào bảng bên dưới của bạn (để chỉ cập nhật những hàng mới được chèn vào) và cách tốt nhất để làm điều này là sử dụng khóa chính của bạn (chẳng hạn như CompanyID ) để đạt được điều này.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server và các lỗ hổng Spectre / Meltdown

  2. OPENXML với xmlns:dt

  3. Làm cách nào để định dạng datetime dưới dạng M / D / YYYY trong SQL Server?

  4. SQL Operations Studio (SQLOPS) là gì?

  5. Bảng thả với khóa ngoại