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

Cara Mengembalikan Daftar Acara Pemicu di SQL Server

Anda dapat menggunakan T-SQL untuk mengembalikan daftar peristiwa pemicu dalam database di SQL Server.

Anda dapat melakukannya menggunakan sys.trigger_events . Tampilan katalog sistem ini menampilkan baris untuk setiap peristiwa atau grup peristiwa tempat pemicu dapat diaktifkan.

Contoh 1 – Penggunaan Dasar

Berikut ini contoh untuk didemonstrasikan.

USE Test;
SELECT 
  object_id,
  OBJECT_NAME(object_id) AS [Trigger Name],
  type_desc
FROM sys.trigger_events;

Hasil:

+-------------+-------------------+-------------+
| object_id   | Trigger Name      | type_desc   |
|-------------+-------------------+-------------|
| 286624064   | t1_insert_trigger | INSERT      |
| 2034106287  | t6ins             | INSERT      |
+-------------+-------------------+-------------+

Dalam hal ini saya menggunakan OBJECT_NAME() berfungsi untuk mendapatkan nama setiap pemicu dari object_id its .

Contoh 2 – Persempit ke Pemicu Tertentu

Anda juga dapat menggunakan OBJECT_NAME() untuk memfilter hasil ke nama pemicu tertentu menggunakan WHERE klausa.

SELECT 
  object_id,
  OBJECT_NAME(object_id) AS [Trigger Name],
  type_desc
FROM sys.trigger_events
WHERE OBJECT_NAME(object_id) = 't1_insert_trigger';

Hasil:

+-------------+-------------------+-------------+
| object_id   | Trigger Name      | type_desc   |
|-------------+-------------------+-------------|
| 286624064   | t1_insert_trigger | INSERT      |
+-------------+-------------------+-------------+

Contoh 3 – Kembalikan Semua Kolom

Contoh ini mengembalikan semua kolom dari tampilan ini.

SELECT * 
FROM sys.trigger_events
WHERE OBJECT_NAME(object_id) = 't1_insert_trigger';

Hasil (menggunakan keluaran vertikal):

object_id             | 286624064
type                  | 1
type_desc             | INSERT
is_first              | 0
is_last               | 0
event_group_type      | NULL
event_group_type_desc | NULL
is_trigger_event      | 1

Dalam contoh ini saya mempresentasikan hasil menggunakan output vertikal sehingga Anda tidak dipaksa untuk menggulir secara horizontal.

Mendapatkan Semua Jenis Peristiwa Pemicu

Anda dapat menanyakan tampilan katalog sys.trigger_event_types untuk mendapatkan daftar semua jenis peristiwa pemicu. Ini adalah peristiwa atau grup peristiwa yang memicu pemicu.

Anda juga dapat menjalankan kueri yang mencantumkannya secara hierarkis.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gunakan OBJECT_NAME() untuk Mendapatkan Nama Objek dari object_id-nya di SQL Server

  2. Pernyataan pilih bersarang di SQL Server

  3. Memperbarui Data Salesforce dengan Kursor SQL Server

  4. SIN() Contoh di SQL Server

  5. Perbedaan antara Subquery dan Subquery Berkorelasi