21.26 INFORMATION_SCHEMA TRIGGERS Table
TRIGGERS 테이블은 트리거에 대한 정보를 제공합니다. 자신이 TRIGGER 권한을 보유하고있는 데이터베이스 및 테이블 정보 만 볼 수 있습니다.
INFORMATION_SCHEMA Name | SHOW Name | Remarks |
|---|---|---|
TRIGGER_CATALOG | | def |
TRIGGER_SCHEMA | | |
TRIGGER_NAME | Trigger | |
EVENT_MANIPULATION | Event | |
EVENT_OBJECT_CATALOG | | def |
EVENT_OBJECT_SCHEMA | | |
EVENT_OBJECT_TABLE | Table | |
ACTION_ORDER | | 0 |
ACTION_CONDITION | | NULL |
ACTION_STATEMENT | Statement | |
ACTION_ORIENTATION | | ROW |
ACTION_TIMING | Timing | |
ACTION_REFERENCE_OLD_TABLE | | NULL |
ACTION_REFERENCE_NEW_TABLE | | NULL |
ACTION_REFERENCE_OLD_ROW | | OLD |
ACTION_REFERENCE_NEW_ROW | | NEW |
CREATED | Created | |
SQL_MODE | sql_mode | MySQL extension |
DEFINER | Definer | MySQL extension |
CHARACTER_SET_CLIENT | character_set_client | MySQL extension |
COLLATION_CONNECTION | collation_connection | MySQL extension |
DATABASE_COLLATION | Database Collation | MySQL extension |
참고 :
"
SHOW이름 "컬럼의 이름은SHOW CREATE TRIGGER대신SHOW TRIGGERS명령문을 보여줍니다. 섹션 13.7.5.39 "SHOW TRIGGERS 구문" 을 참조하십시오.TRIGGER_SCHEMA및TRIGGER_NAME: 각 트리거가 실행되는 데이터베이스의 이름과 트리거 이름입니다.EVENT_MANIPULATION: 트리거 이벤트입니다. 이것은 트리거가 활성화되면 연결된 테이블에 대한 작업 유형입니다. 값은'INSERT'(행이 삽입 된 경우),'DELETE'(행이 삭제 된 경우) 또는'UPDATE'(행이 변경된 경우)입니다.EVENT_OBJECT_SCHEMA및EVENT_OBJECT_TABLE: 섹션 20.3 "트리거 사용" 에 언급 되었 듯이 모든 트리거는 정확히 하나의 테이블에 연결됩니다. 이 컬럼이 테이블이 존재하는 데이터베이스와 테이블 이름이 각각 표시됩니다.ACTION_ORDER: 같은 테이블에 유사한 트리거 목록에서 트리거 액션의 순서 위치입니다. 현재이 값은 항상0입니다. 이 같은 테이블에서 같은EVENT_MANIPULATION및ACTION_TIMING트리거를 여러 개 가질 수 없기 때문입니다.ACTION_STATEMENT: 트리거 내용입니다. 즉, 트리거가 활성화 된 경우 실행되는 문입니다. 이 텍스트는 UTF-8 인코딩을 사용합니다.ACTION_ORIENTATION: 항상'ROW'의 값을 포함합니다.ACTION_TIMING: 트리거가 활성화되는 것이 트리거 이벤트 전이나 후에 여부를 지정합니다. 값은'BEFORE'또는'AFTER'입니다.ACTION_REFERENCE_OLD_ROW및ACTION_REFERENCE_NEW_ROW: 각각 이전 컬럼 식별자와 새로운 컬럼 식별자입니다. 이것은ACTION_REFERENCE_OLD_ROW가 항상'OLD'의 값을 포함하고ACTION_REFERENCE_NEW_ROW가 항상'NEW'의 값을 포함하는 것을 의미합니다.SQL_MODE: 트리거가 작성된 경우에 유효하고, 트리거를 실행할 때 SQL 모드입니다. 가능한 값은 섹션 5.1.7 "서버 SQL 모드" 를 참조하십시오.DEFINER:'형식으로 나타낸 트리거를 생성 한 사용자 계정입니다.user_name'@'host_name'CHARACTER_SET_CLIENT: 트리거가 생성되었을 때의character_set_client시스템 변수 세션 값입니다.COLLATION_CONNECTION: 트리거가 생성되었을 때의collation_connection시스템 변수 세션 값입니다.DATABASE_COLLATION: 트리거가 연결된 데이터베이스의 데이터 정렬입니다.ACTION_CONDITION,ACTION_REFERENCE_OLD_TABLE,ACTION_REFERENCE_NEW_TABLE및CREATED열에는 현재NULL이 항상 포함됩니다.
섹션 20.3 "트리거 사용" 에 정의 된 ins_sum 트리거를 사용한 예입니다.
mysql>SELECT * FROM INFORMATION_SCHEMA.TRIGGERS->WHERE TRIGGER_SCHEMA='test' AND TRIGGER_NAME='ins_sum'\G*************************** 1. row *************************** TRIGGER_CATALOG: def TRIGGER_SCHEMA: test TRIGGER_NAME: ins_sum EVENT_MANIPULATION: INSERT EVENT_OBJECT_CATALOG: def EVENT_OBJECT_SCHEMA: test EVENT_OBJECT_TABLE: account ACTION_ORDER: 0 ACTION_CONDITION: NULL ACTION_STATEMENT: SET @sum = @sum + NEW.amount 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: NULL SQL_MODE: NO_ENGINE_SUBSTITUTION DEFINER: me@localhost CHARACTER_SET_CLIENT: utf8 COLLATION_CONNECTION: utf8_general_ci DATABASE_COLLATION: latin1_swedish_ci