본문 바로가기
✨ DBMS/etc

[DB] 프로시저(Procedure)와 트리거(Trigger) 차이

by 환풍 2023. 12. 26.
728x90

 

 

프로시저

절차형 SQL을 활용해 특정 기능을 수행하는 일종의 트랜잭션 언어이다. 호출을 통해 실행되어 미리 저장해 놓은 SQL 작업을 수행한다. 여러 프로그램에서 호출하여 사용 가능하고, 시스템의 일일 마감 작업, 일괄 작업 등에 주로 사용된다.

 

 

트리거

DB 시스템에서 삽입, 갱신, 삭제 등 이벤트가 발생할 때마다 자동 수행되는 절차형 SQL이다. 무결성 유지, 로그 메시지 출력 등 목적으로 사용한다. 구문에 DCL을 사용할 수 없고, DCL이 포함된 프로시저나 함수 호출도 불가능하다. 즉, Commit과 Rollback이 불가능한 것이다.

 

 

프로시저 트리거
COMMIT, ROLLBACK 실행 가능 COMMIT, ROLLBACK 실행 불가능
실행 명령어로 실행 생성 후 자동 실행
CREATE PROCEDURE 문법 사용 CREATE TRIGGER 문법 사용
생성하면 소스코드와 실행코드가 생성 생성하면 소스코드와 실행코드가 생성
반응형

'✨ DBMS > etc' 카테고리의 다른 글

[DB] 인덱스 B-TREE , BITMAP 개념과 차이  (0) 2023.12.27
[DB] UNDO, REDO의 차이  (0) 2023.12.25
[DB] MyBatis와 JPA의 차이와 장점, 단점  (0) 2023.12.24
[DB] ORM 이란?  (0) 2023.12.24
[DB] RDBMS와 NoSQL의 차이  (0) 2023.12.24

댓글