首页  >  文章  >  数据库  >  我们如何使用 INFORMATION_SCHEMA 来获取特定数据库中触发器的详细信息?

我们如何使用 INFORMATION_SCHEMA 来获取特定数据库中触发器的详细信息?

王林
王林转载
2023-09-08 19:17:02528浏览

我们如何使用 INFORMATION_SCHEMA 来获取特定数据库中触发器的详细信息?

可以借助以下语句来完成 -

mysql> select * from information_schema.triggers where
    -> information_schema.triggers.trigger_schema like '%query%'\G
*************************** 1. row ***************************
            TRIGGER_CATALOG: def
             TRIGGER_SCHEMA: query
               TRIGGER_NAME: trigger_before_delete_sample
         EVENT_MANIPULATION: DELETE
       EVENT_OBJECT_CATALOG: def
        EVENT_OBJECT_SCHEMA: query
         EVENT_OBJECT_TABLE: sample
               ACTION_ORDER: 1
           ACTION_CONDITION: NULL
           ACTION_STATEMENT: BEGIN
SET @count = if (@count IS NULL, 1, (@count+1));
INSERT INTO sample_rowaffected values (@count);
END
         ACTION_ORIENTATION: ROW
              ACTION_TIMING: BEFORE
 ACTION_REFERENCE_OLD_TABLE: NULL
 ACTION_REFERENCE_NEW_TABLE: NULL
   ACTION_REFERENCE_OLD_ROW: OLD
   ACTION_REFERENCE_NEW_ROW: NEW
                    CREATED: 2017-11-21 12:31:58.70
                   SQL_MODE: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
                    DEFINER: root@localhost
       CHARACTER_SET_CLIENT: cp850
       COLLATION_CONNECTION: cp850_general_ci
         DATABASE_COLLATION: latin1_swedish_ci
*************************** 2. row ***************************
           TRIGGER_CATALOG: def
            TRIGGER_SCHEMA: query
              TRIGGER_NAME: before_inser_studentage
        EVENT_MANIPULATION: INSERT
      EVENT_OBJECT_CATALOG: def
       EVENT_OBJECT_SCHEMA: query
        EVENT_OBJECT_TABLE: student_age
              ACTION_ORDER: 1
          ACTION_CONDITION: NULL
          ACTION_STATEMENT: IF NEW.age < 0 THEN SET NEW.age = 0;
END IF
        ACTION_ORIENTATION: ROW
             ACTION_TIMING: BEFORE
ACTION_REFERENCE_OLD_TABLE: NULL
ACTION_REFERENCE_NEW_TABLE: NULL
  ACTION_REFERENCE_OLD_ROW: OLD
  ACTION_REFERENCE_NEW_ROW: NEW
                   CREATED: 2017-11-21 11:26:15.34
                  SQL_MODE: ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
                   DEFINER: root@localhost
      CHARACTER_SET_CLIENT: cp850
      COLLATION_CONNECTION: cp850_general_ci
        DATABASE_COLLATION: latin1_swedish_ci

2 rows in set (0.03 sec)

以上是我们如何使用 INFORMATION_SCHEMA 来获取特定数据库中触发器的详细信息?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:tutorialspoint.com。如有侵权,请联系admin@php.cn删除