Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เราจะใช้ INFORMATION_SCHEMA เพื่อรับรายละเอียดเกี่ยวกับทริกเกอร์ในฐานข้อมูลเฉพาะได้อย่างไร


สามารถทำได้โดยใช้คำสั่งต่อไปนี้ −

mysql> เลือก * จาก information_schema.triggers โดยที่ -> information_schema.triggers.trigger_schema เช่น '%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_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:สร้างใหม่:2017-11-21 12:31:58.70 SQL_MODE:ONLY_FULL_GROUP_BYTABLESTRICT_NODRODOR 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*************************** 2. แถว * ************************** TRIGGER_CATALOG:def TRIGGER_SCHEMA:สืบค้น 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:BEFOREACTION_REFERENCE_OLD_TABLE:NULLACTION_REFERENCE_NEW_TABLE:NULL ACTION_REFERENCE_REFERENCE:WROLECTION_REFERENCE_NEW_TABLE:NULL ACTION_REFERENCE_RE:WROLE::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:latin2_swedish_0.0 set)