안녕하세요.
도저히 궁금증을 못이겨 이렇게 글을 올림니다.
트리거 흐름은 아래와 같습니다.
출고 테이블 -> 수불 테이블 -> 현재고 테이블, 월간 재고 테이블
트리거의 기본 로직은
1) 현재고, 월간 재고 테이블에 아이템이 존재하는지 검사
2) 있으면 update, 없으면 insert 입니다.
여기서 수불 테이블 트리거가 2가지로 설계된게 있는데
1번째는
수불테이블 After each row 이벤트 발생 할때마다 수불데이타를
현재고 테이블과 월간 재고 테이블에 적용하는 것이고
2번째는
패키지를 일종의 저장 장소로 이용하여 다음과 같이 동작합니다.
1) Before statement 일때 패키지 저장 공간 초기화
2)
After each row 일때 각열 old, new정보를 패키지에 array로 저장하고
3) After statement 일때 패키지에 저장된 데이타를 현재고 테이블과 월간 재고 테이블에 적용합니다.
두 트리거 방식을 서로 비교하면 어떤 장단점이 있을까요?