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

Vraťte typ spouštěče DML na tabulku na serveru SQL

Na serveru SQL Server můžete použít uloženou proceduru sp_helptrigger k vrácení typu nebo typů aktivačních událostí DML definovaných v zadané tabulce pro aktuální databázi.

Tato uložená procedura funguje pouze se spouštěči DML (nikoli spouštěči DDL).

Syntaxe

Oficiální syntaxe vypadá takto:

sp_helptrigger [ @tabname = ] 'table'   
     [ , [ @triggertype = ] 'type' ]

Jako argument musíte zadat název tabulky. Můžete mu předponu @tabname = , ale toto je volitelné.

Máte také možnost určit typ spouštění. Může to být buď INSERT , DELETE nebo UPDATE .

Příklad 1 – Základní použití

Zde je jednoduchý příklad k demonstraci.

EXEC sp_helptrigger 'dbo.t1';

Výsledek:

+-------------------+-----------------+------------+------------+------------+-----------+---------------+------------------+
| trigger_name      | trigger_owner   | isupdate   | isdelete   | isinsert   | isafter   | isinsteadof   | trigger_schema   |
|-------------------+-----------------+------------+------------+------------+-----------+---------------+------------------|
| t1_insert_trigger | dbo             | 0          | 0          | 1          | 1         | 0             | dbo              |
+-------------------+-----------------+------------+------------+------------+-----------+---------------+------------------+

V případě, že máte potíže s posouváním do stran, zde je výsledek opět pomocí vertikálního výstupu:

trigger_name   | t1_insert_trigger
trigger_owner  | dbo
isupdate       | 0
isdelete       | 0
isinsert       | 1
isafter        | 1
isinsteadof    | 0
trigger_schema | dbo

Příklad 2 – Zadejte typ

V tomto příkladu také specifikuji typ.

EXEC sp_helptrigger 'dbo.t1', 'INSERT';

Výsledek (při použití vertikálního výstupu):

trigger_name   | t1_insert_trigger
trigger_owner  | dbo
isupdate       | 0
isdelete       | 0
isinsert       | 1
isafter        | 1
isinsteadof    | 0
trigger_schema | dbo

V tomto případě byl spouštěč tohoto typu.

Zde opět používá jiný typ.

EXEC sp_helptrigger 'dbo.t1', 'DELETE';

Výsledek:

(0 rows affected)

V tomto případě nebyly žádné DELETE spouští na tomto stole.


  1. Jak převést výsledek dotazu SQL na datovou strukturu PANDAS?

  2. Jak to udělat v Laravelu, dílčí dotaz where in

  3. Storage Engine Volba:Aria

  4. Android Sqlite při upgradu odstraňte tabulku z databáze