20.3 트리거 사용
트리거는 테이블과 관련된 해당 테이블에 대해 특정 이벤트가 발생하면 활성화되는 명명 된 데이터베이스 오브젝트입니다. 트리거를 사용하는 경우에는 테이블에 삽입 할 값 검사를 수행하거나 업데이트의 값 계산을 수행 할 수 있습니다.
트리거는 연결된 테이블에서 문이 행을 삽입, 업데이트 또는 삭제를 수행 할 때 활성화하도록 정의됩니다. 이러한 행 작업을 트리거 이벤트입니다. 예를 들어, 행은 INSERT
또는 LOAD DATA
문에 삽입 할 삽입 트리거는 삽입 된 행마다 활성화합니다. 트리거는 트리거 이벤트 전후의 어느 쪽인지로 활성화하도록 설정할 수 있습니다. 예를 들어, 테이블에 삽입되는 각 행의 앞 또는 갱신되는 각 행의 후에 트리거를 활성화시킬 수 있습니다.
MySQL 트리거 SQL 문이 테이블의 변경 사항의 경우에만 활성화합니다. 보기를 변경하거나 SQL 문을 MySQL Server에 전송하지 API가 테이블의 변경 사항은 활성화하지 않습니다. 이것은 다음을 의미합니다.
INFORMATION_SCHEMA
또는performance_schema
테이블은 실제로는보기 때문에 트리거는이 테이블에서의 변경은 활성화되지 않습니다.트리거는
NDB
API를 사용하여 수행 된 업데이트로 활성화되지 않습니다.
다음 섹션에서는 트리거를 만들고 삭제하는 구문에 대해 설명하고 사용 방법의 예를 짚고 트리거 메타 데이터를 검색하는 방법을 보여줍니다.
추가 리소스
트리거를 취급하는 경우에는 트리거 사용자 포럼 이 도움이됩니다.
MySQL에서 트리거 자주 묻는 질문과 답변 내용은 섹션 A.5 "MySQL 5.6 FAQ : 트리거" 를 참조하십시오.
트리거의 사용에는 몇 가지 제한이 있습니다. 섹션 D.1 "저장 프로그램 제한 사항" 을 참조하십시오.
트리거의 바이너리 로깅은 섹션 20.7 "저장 프로그램의 바이너리 로깅" 에서 설명한 바와 같이 실시합니다.