Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SQL Server 2008 - Pomoc w pisaniu prostego wyzwalacza INSERT

Chcesz skorzystać z wstawionego tabela logiczna dostępna w kontekście wyzwalacza. Jest zgodny ze schematem wstawianej tabeli i zawiera wiersze, które zostaną wstawione (w wyzwalaczu aktualizacji masz dostęp do wstawionego i usunięte tabele logiczne, które reprezentują odpowiednio nowe i oryginalne dane.)

Aby wstawić pary pracownik / dział, które obecnie nie istnieją, możesz spróbować czegoś takiego.

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. Przedstawiamy odtwarzanie — nowa diagnostyka punktu w czasie dla Spotlight Cloud

  2. Zaszyfrowane kolumny SQL w klauzuli WHERE

  3. SQL Server zużywa dużo procesora podczas wyszukiwania wewnątrz ciągów nvarchar

  4. Jak przekonwertować format daty systemowej na dd/mm/rr w SQL Server 2008 R2?

  5. Dynamiczny SQL z pętlą po wszystkich kolumnach w tabeli