文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  SHOW TRIGGERS 陳述式

15.7.7.39 SHOW TRIGGERS 陳述式

SHOW TRIGGERS
    [{FROM | IN} db_name]
    [LIKE 'pattern' | WHERE expr]

SHOW TRIGGERS 列出目前為資料庫中的資料表定義的觸發程序 (除非給定 FROM 子句,否則為預設資料庫)。此陳述式僅針對您具有 TRIGGER 權限的資料庫和資料表傳回結果。如果存在 LIKE 子句,則表示要比對的資料表名稱 (而非觸發程序名稱),並導致此陳述式顯示這些資料表的觸發程序。WHERE 子句可用於使用更一般的條件來選擇列,如 第 28.8 節「擴充 SHOW 陳述式」中所述。

對於 第 27.3 節「使用觸發程序」中定義的 ins_sum 觸發程序,SHOW TRIGGERS 的輸出如下所示

mysql> SHOW TRIGGERS LIKE 'acc%'\G
*************************** 1. row ***************************
             Trigger: ins_sum
               Event: INSERT
               Table: account
           Statement: SET @sum = @sum + NEW.amount
              Timing: BEFORE
             Created: 2018-08-08 10:10:12.61
            sql_mode: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,
                      NO_ZERO_IN_DATE,NO_ZERO_DATE,
                      ERROR_FOR_DIVISION_BY_ZERO,
                      NO_ENGINE_SUBSTITUTION
             Definer: me@localhost
character_set_client: utf8mb4
collation_connection: utf8mb4_0900_ai_ci
  Database Collation: utf8mb4_0900_ai_ci

SHOW TRIGGERS 輸出具有以下這些欄位

  • Trigger

    觸發程序的名稱。

  • Event

    觸發程序事件。這是觸發程序啟動時,關聯資料表上的作業類型。值為 INSERT (插入一列)、DELETE (刪除一列) 或 UPDATE (修改一列)。

  • Table

    定義觸發程序的資料表。

  • Statement

    觸發程序主體;也就是觸發程序啟動時執行的陳述式。

  • Timing

    觸發程序是在觸發事件之前還是之後啟動。值為 BEFOREAFTER

  • Created

    觸發程序的建立日期和時間。對於觸發程序,這是一個 TIMESTAMP(2) 值(秒的小數部分以百分之一秒為單位)。

  • sql_mode

    建立觸發程序時生效的 SQL 模式,以及觸發程序在其下執行的模式。如需允許的值,請參閱 第 7.1.11 節「伺服器 SQL 模式」

  • Definer

    建立觸發程序的使用者帳戶,格式為 'user_name'@'host_name'

  • character_set_client

    建立觸發程序時,character_set_client 系統變數的階段作業值。

  • collation_connection

    建立觸發程序時,collation_connection 系統變數的階段作業值。

  • Database Collation

    與觸發程序關聯的資料庫的定序。

觸發程序資訊也可以從 INFORMATION_SCHEMA TRIGGERS 資料表取得。請參閱 第 28.3.44 節「INFORMATION_SCHEMA TRIGGERS 資料表」