어떤 테이블에 데이터가 들어오면 insert 트리거가 프로시저를 실행합니다.
프로시저 내용은, 들어온 값을 가공해서 다른 테이블에 넣고, insert된 내용 중 일부를 update하는 프로시저 입니다.
문제는,
몇개의 row만 insert를 하면 트리거 및 프로시저가 정상적으로 동작하는데,
몇백 row를 동시에 insert 하면
메시지 3609, 수준 16, 상태 1, 줄 4
트리거가 발생하여 트랜잭션이 종료되었습니다. 일괄 처리가 중단되었습니다.
하면서 종료됩니다.
모든 insert가 끝난 후 트리거가 동작한다던지 하는 다른 방법이 있을까요?
Comment 1
-
왕만두와우동
2017.01.19 08:39
트리거 상에서 로우별 반복문을 통해 프로시저를 호출하면 해결은 될거같은데, 속도이슈가 있을것 같네요..;;
현명한 고수분의 답변이 있으시길