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

SQL 트리거

SQL 트리거는 사용자가 특정 테이블과 상호 작용할 때 발생하는 여러 다른 이벤트를 시작하는 이벤트입니다. 이 특정 SQL 문은 양식 데이터의 유효성을 검사하거나 규칙을 적용하여 도움이 됩니다.

트리거는 다음 이벤트 전후에 실행됩니다.

  • INSERT – 새 행이 삽입될 때
  • UPDATE – 기존 행이 업데이트될 때
  • DELETE – 행이 삭제될 때

어떤 트리거가 꺼지고 어떤 일이 발생하는지는 작성 방법에 따라 다릅니다. create 문을 작성하여 시작하겠습니다.

CREATE TRIGGER <trigger_name> [BEFORE|AFTER] [INSERT|UPDATE|DELETE]
ON <table_name> [FOR EACH ROW|FOR EACH STATEMENT]
BEGIN
  <trigger_logic>
END;

<> 세트 사이에서 사용자 정의 이름 또는 논리로 바꾸십시오. [ ] 내부에서 사용 가능한 항목 중 하나를 선택합니다.

BEFORE/AFTER 및 INSERT|UPDATE|DELETE:각 목록에서 하나를 선택합니다. BEFORE/AFTER는 트리거가 발생하는 시기를 결정합니다. INSERT/UPDATE/DELETE는 트리거를 시작하는 발생 이벤트입니다.

FOR EACH ROW|FOR EACH STATEMENT:여기서 두 가지 선택의 차이는 트리거가 실행되는 횟수의 차이입니다. FOR EACH ROW는 테이블의 영향을 받는 각 행에 대해 트리거합니다. FOR EACH STATEMENT는 행이 업데이트되었는지 여부에 관계없이 항상 최소 한 번은 실행되도록 보장됩니다.

데이터베이스 또는 테이블과 유사하게 DROP TRIGGER 옵션이 있습니다.

DROP TRIGGER [IF EXISTS] trigger_name;

IF EXISTS는 구문의 선택적 부분입니다. 명령문 블록에 포함된 경우 해당 부분은 "트리거가 존재하지 않음" 오류를 방지합니다. 삭제된 테이블은 관련된 모든 트리거도 자동으로 삭제합니다.

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

SQL 트리거에는 세 가지 주요 사항이 필요합니다. 트리거 이름과 이벤트 발생 시기, 트리거 발생 빈도, 그리고 실제 트리거에 대한 논리를 배치하는 BEGIN/END 블록을 지정하는 create 문입니다.

처음에 이해가 되지 않으면 계속 연습하세요. SQL의 고급 개념이기 때문에 다루려면 SQL의 다른 주제와 기능보다 더 많은 반복이 필요할 것입니다.