Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL Server 2008 - Guida alla scrittura di un semplice trigger INSERT

Vuoi sfruttare l'inserimento tabella logica disponibile nel contesto di un trigger. Corrisponde allo schema per la tabella che viene inserita e include le righe che verranno inserite (in un trigger di aggiornamento hai accesso a inserito e eliminato tabelle logiche che rappresentano rispettivamente i dati nuovi e originali.)

Quindi per inserire coppie Impiegato/Dipartimento che attualmente non esistono potresti provare qualcosa di simile al seguente.

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