2014-12-03 4 views
0

내가 ORA-04088를 얻고 뷰를 쿼리 시도 할 때 돌연변이입니다 table 및 all_orders는 ORDERS 테이블을 쿼리하는 뷰입니다. 이제 방아쇠가 발사되면 위에서 언급 한 오류가 발생합니다.표는 트리거가

아무도 도와 줄 수 있습니까?

답변

0

트리거가 읽은 테이블을 업데이트하려고 시도하면 변경 테이블 오류가 발생합니다. 귀하의 경우 그것은 주문 테이블입니다.

이러한 종류의 활동에 대한 트리거를 피하거나 명령문 수준 트리거를 사용하는 것이 가장 좋습니다. 이 두 가지가 모두 실행 가능하지 않으면 트리거를 AFTER UPDATE of STATUS on ORDERS

으로 변경하십시오. 그러면 업데이트가 완료되고 선택이 실행되면서 해결됩니다. (하지만 AFTER 트리거를 사용하여 비즈니스 로직에 영향을 미치지 않도록하십시오.)

+0

AFTER를 사용해 보았습니다. 또한 여기에서 테이블을 업데이트하려고하지 않습니다. 내부적으로 테이블을 쿼리하는 뷰에서 쿼리하려고합니다. –