Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Kembalikan Daftar Pemicu di SQL Server

Anda dapat menggunakan sys.triggers tampilan katalog untuk mengembalikan daftar pemicu dalam database di SQL Server.

Tampilan ini berisi baris untuk setiap objek yang menjadi pemicu, dengan tipe TR atau TA.

Contoh

Berikut ini contoh kueri sys.triggers :

SELECT * FROM sys.triggers;

Hasil (menggunakan keluaran vertikal):

-[ RECORD 1 ]-------------------------
name                   | trg_Books_UpdateModifiedDate
object_id              | 1669580986
parent_class           | 1
parent_class_desc      | OBJECT_OR_COLUMN
parent_id              | 1605580758
type                   | TR
type_desc              | SQL_TRIGGER
create_date            | 2020-08-16 00:35:09.880
modify_date            | 2020-08-16 00:35:09.880
is_ms_shipped          | 0
is_disabled            | 0
is_not_for_replication | 0
is_instead_of_trigger  | 0
(1 row affected)

Saya menggunakan output vertikal dalam contoh ini sehingga Anda tidak perlu menggulir ke samping.

Dalam kasus saya, saya hanya punya satu pemicu di database ini.

Jika saya beralih ke database yang berbeda, saya mendapatkan pemicu di database itu. Jika database tidak berisi pemicu, maka saya tidak mendapatkan hasil.

USE WideWorldImporters;
SELECT * FROM sys.triggers;

Hasil:

Commands completed successfully.
(0 rows affected)

Pemicu Server

Jika Anda perlu mengembalikan daftar pemicu server, gunakan sys.server_triggers bukannya sys.triggers .

Tampilan tersebut mengembalikan semua pemicu DDL tingkat server dengan object_type dari TR atau TA.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Masukkan seluruh DataTable ke dalam database sekaligus, bukan baris demi baris?

  2. Ubah 'smalldatetime' menjadi 'date' di SQL Server (Contoh T-SQL)

  3. Mengapa saya tidak bisa menggunakan alias dalam pernyataan DELETE?

  4. Hasilkan nilai DISTINCT di STRING_AGG

  5. Akankah GETUTCDATE() mengembalikan nilai yang sama jika digunakan dua kali dalam pernyataan yang sama?