Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

INFORMATION_SCHEMA를 사용하여 특정 데이터베이스의 트리거에 대한 세부 정보를 얻으려면 어떻게 해야 합니까?


다음 문장의 도움으로 수행할 수 있습니다 -

mysql> select * from information_schema.triggers 여기서 -> information_schema.triggers.trigger_schema like '%query%'\G************************* **** 1. 행 *************************** TRIGGER_CATALOG:def TRIGGER_SCHEMA:쿼리 TRIGGER_NAME:trigger_before_delete_sample EVENT_MANIPULATION:DELETE EVENT_OBJECT_CATALOG:def EVENT_OBJECT_SCHEMA :쿼리 EVENT_OBJECT_TABLE:샘플 ACTION_ORDER:1 ACTION_CONDITION:NULL ACTION_STATEMENT:BEGINSET @count =if (@count IS NULL, 1, (@count+1));INSERT INTO sample_row 관련 값(@count);END ACTION_ORIENTATION:ROW ACTION_ORETIMING:B 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_TRANS_STRICOT_NO SION_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************** row********* ************************** TRIGGER_CATALOG:def TRIGGER_SCHEMA:쿼리 TRIGGER_NAME:before_inser_studentage EVENT_MANIPULATION:INSERT EVENT_OBJECT_CATALOG:def EVENT_OBJECT_SCHEMA:쿼리 EVENT_OBJECT_TABLE:student_age ACTION_ORDER:1 ACTION_CONDITION:NULL ACTION_STATEMENT:IF NEW.age <0 THEN SET NEW.age =0 :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:
)