sql >> Databáze >  >> RDS >> Sqlserver

Vložit Aktualizační spouštěč, jak určit, zda vložit nebo aktualizovat

Spouštěče mají speciální INSERTED a DELETED tabulky pro sledování dat „před“ a „po“. Můžete tedy použít něco jako IF EXISTS (SELECT * FROM DELETED) pro zjištění aktualizace. Máte pouze řádky v DELETED při aktualizaci, ale v INSERTED jsou vždy řádky .

Hledejte "vloženo" v CREATE TRIGGER.

Upravit, 23. listopadu 2011

Po komentáři je tato odpověď pouze pro INSERTED a UPDATED spouštěče.
Spouštěče DELETE samozřejmě nemohou mít "vždy řádky v INSERTED “ jak jsem řekl výše



  1. Nastavení hodnot sloupců jako názvů sloupců ve výsledku dotazu SQL

  2. 4 způsoby formátování čísla bez desetinných míst v Oracle

  3. Jak zabráním opakování spouštěče databáze?

  4. Typy kurzoru SQL Server - Jaký je rozdíl mezi LOKÁLNÍM A GLOBÁLNÍM kurzorem | Kurz SQL Server / Kurz TSQL