트리거 함수에서 SQL 명령을 실행하는 경우 이 명령은 방아쇠가있는 테이블에 액세스하고 토토 가시성 규칙을 알고 있어야합니다. 이 SQL 명령이 토토 변경을 볼 수 있는지 여부를 결정합니다. 방아쇠가 발사되었습니다. 간단히:
명령문 수준 트리거 간단한 가시성 규칙을 따릅니다. 진술에 의한 변경 사항은 이전에 호출되는 진술 수준 트리거 진술, 모든 수정은 표시됩니다 트리거 후 진술 수준.
토토 변경 (삽입, 업데이트 또는 삭제) 불에 타는 방아쇠는 자연스럽게notSQL 명령에 표시됩니다 트리거 전에 행 수준으로 실행되지 않았기 때문입니다 아직 일어났다.
그러나 SQL 명령은 이전에 줄 수준으로 실행되었습니다 방아쇠Will참조 이전에 처리 된 행에 대한 데이터 변경의 영향 동일한 외부 명령. 이것은 이후로주의가 필요합니다 이러한 변화 이벤트의 순서는 일반적으로 아닙니다 예측 가능; 여러 행에 영향을 미치는 SQL 명령 순서대로 행을 방문하십시오.
트리거 후 행 레벨이 발사되면 모든 토토가 변경됩니다. 외부 명령에 의해 만들어진 것은 이미 완료되었으며 호출 된 트리거 기능에 표시됩니다.
토토 가시성 규칙에 대한 추가 정보를 찾을 수 있습니다 안에PostgreSQL : 문서 : 8.3 : 데이터 메이저 토토 사이트 가시성. 의 예토토 캔 : 문서 : 8.3 : 완전한 예a 이 규칙의 시연.