[PostgreSQL] Trigger + Transaction
·
DataBase/PostgreSQL
🎯 Goals 트리거 , 트랜잭션 내에서 언제 실행될까? 3가지 타입의 트리거 BEFORE ✅ AFTER (Only handle this in this post) INSTEAD OF 각 트리거 타입에 따라 Default Behavior 가 다르므로 꼭 공식문서를 참조하길 바란다. 이 글에선 `AFTER` 트리거만 다룬다. 아래 SQL문을 보고 실행 결과를 예상해보자. Each statement? vs After all transaction `COMMIT()`? 당연히 나는 후자로 알고있었다, 트랜잭션의 모든 Statement 가 끝난 후에 `COMMIT()` 된 시점에 트리거가 발동할 줄 알았다. 예상한 로그는 다음과 같다. ❌ 틀렸다, 각 문장마다 곧바로 트리거가 실행됐다. 공식 문서 훔쳐보기 Row-..