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

SQL Server 2008 - Giúp viết kích hoạt INSERT đơn giản

Bạn muốn tận dụng được chèn bảng logic có sẵn trong ngữ cảnh của trình kích hoạt. Nó khớp với lược đồ cho bảng đang được chèn và bao gồm (các) hàng sẽ được chèn (trong trình kích hoạt cập nhật, bạn có quyền truy cập vào đã chèn đã xóa bảng logic đại diện cho dữ liệu mới và dữ liệu gốc tương ứng.)

Vì vậy, để chèn các cặp Nhân viên / Bộ phận hiện không tồn tại, bạn có thể thử một cái gì đó như sau.

CREATE TRIGGER trig_Update_Employee
ON [EmployeeResult]
FOR INSERT
AS
Begin
    Insert into Employee (Name, Department) 
    Select Distinct i.Name, i.Department 
    from Inserted i
    Left Join Employee e
    on i.Name = e.Name and i.Department = e.Department
    where e.Name is null
End


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn đếm bắt buộc

  2. Có cách nào dễ dàng để làm cho EntityFramework sử dụng các giá trị mặc định của SQL không?

  3. Cách thay đổi kiểu dữ liệu cột trong cơ sở dữ liệu SQL mà không làm mất dữ liệu

  4. Làm cách nào để tôi nhóm theo cột ngày giờ mà không mất thời gian cân nhắc

  5. Làm thế nào để tìm ra bảng nào mà một khóa trang thuộc về