文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 參考手冊  /  ...  /  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.4 節 「使用觸發程序」中定義的 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 輸出具有以下欄位

  • 觸發程序

    觸發程序的名稱。

  • 事件

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

  • 資料表

    定義觸發程序的資料表。

  • 陳述式

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

  • 時序

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

  • 已建立

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

  • sql_mode

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

  • 定義者

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

  • character_set_client

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

  • collation_connection

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

  • 資料庫定序

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

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