데이터베이스/혼자공부하는 SQL

07-03 트리거

공부를하자 2024. 6. 1. 20:39

 

아래의 상기 내용은

"혼자공부하는 SQL" 도서 내용과 인터넷의 내용을 실습 정리한 글입니다.

1.트리거(Trigger)

 1)정의

  -SQL문이 실행될때 자동으로 실행되는 프로그래밍 기능.

  -스토어드 프로시저와 문법은 비슷하지만 Call문으로 직접 실행시킬 없고 INSERT,DELETE

  UPDATE등의  SQL문이 발생했을 이벤트같이 발동된다.

 

2.임시 테이블

 1)정의

 -NEW,OLD 문은 INSERT,UPDATE,DELETE 작업이 수행되면 임시로 사용되는 MYSQL 테이블 시스템

 2) NEW테이블의 INSERT 데이터 적용

 3)OLD 테이블의 DELETE 데이터 적용

-어떤 테이블에 DELETE 삭제된 데이터가 잠시동안 OLD테이블에 존재하며 트리거가

 삭제된 데이터 부분을 사용하려 할때 접근이 가능하다. 

4)NEW,OLD 테이블의 UPDATE 데이터 적용

2.트리거 실습

 1) 트리거 생성

2-1)트리거 발동하기

 

 

-

-위의 트리거는 DELETE문이 발생할때 @msg 변수에 문자열을 할당하기 때문에 UPDATE 문이 빈값이 출력

 DELETE문이 발생했으면 문자열 변수가 할당된다.

3-1) 트리거를 이용한 백업 테이블 만들기

  -백업할 테이블 생성

  -백업 테이블 생성

 -UPDATE 발동할 트리거 생성

 -DELETE 발동할 트리거 생성

-UPDATE 트리거 발동

 

-TRUNCATE DELETE 트리거 발동

 

 

-DELETE 트리거 발동

 

 

'데이터베이스 > 혼자공부하는 SQL' 카테고리의 다른 글

07-02 스토어드 함수와 커서  (0) 2024.05.25
07-01 스토어드 프로시저  (0) 2024.05.19
06-02 균형트리  (0) 2024.04.01
06-01 인덱스  (0) 2024.03.27
05-03 가상의 테이블 : 뷰  (1) 2024.03.19