토토 결과 세트

제약 설정 설정 - 현재 트랜잭션에 대한 제약 조건 검사 타이밍 설정

시놉시스

세트 토토 결과 조건 all |이름[, ...] 연기 |

설명

토토 결과 세트현재 트랜잭션 내에서 제약 조건 검사의 동작을 설정합니다.즉시각 문의 끝에서 토토 결과 조건을 확인합니다.연기트랜잭션 커밋까지 토토 결과 조건이 확인되지 않습니다. 각 토토 결과 조건은 고유 한즉시또는연기모드.

창조시 토토 결과 조건에 세 가지 특성 중 하나가 주어집니다.처음에 연기 가능, 처음에는 지연 가능또는연기가 없어. 세 번째 수업은 항상즉시|토토 결과 세트명령. 처음 두 클래스는 표시된 모드에서 모든 트랜잭션을 시작하지만 거래 내에서 동작을 변경할 수 있습니다.토토 결과 세트.

토토 결과 세트제약 조건 이름 목록을 사용하면 해당 제약 조건의 모드 만 변경됩니다 (모두 지연 가능). 각 제약 조건 이름은 스키마 자격을 사용할 수 있습니다.토토 결과 조건 세트 모두지연 가능한 모든 토토 결과 조건의 모드를 변경합니다.

언제토토 결과 세트토토 결과 조건의 모드 변경연기to즉시, 새로운 모드는 소급 적용됩니다 : 트랜잭션이 끝날 때 점검 될 미결제 데이터 수정은 대신를 확인하는 동안 확인됩니다토토 결과 세트명령. 그러한 토토 결과이 위반되면토토 결과 세트실패 (제한 조건 모드를 변경하지 않음). 따라서,토토 결과 세트트랜잭션의 특정 지점에서 토토 결과 조건을 확인하는 데 사용될 수 있습니다.

현재, 만고유 한, 기본 키, 참조(외국 키) 및제외토토 결과 조건은이 설정의 영향을받습니다.NOT NULLandcheck행이 삽입되거나 수정되면 토토 결과 조건이 항상 확인됩니다 (not성명서의 끝에서). 선언되지 않은 독창성 및 배제 토토 결과연기 가능즉시 확인됩니다.

선언 된 트리거 발사토토 결과 트리거또한이 설정에 의해 제어됩니다 - 그들은 관련 토토 결과 조건을 확인 해야하는 동시에 발사합니다.

노트

때문에postgresql스키마 내에서 제약 조건 이름이 고유해야 할 필요는 없지만 지정된 구속 조건 이름에 대해 둘 이상의 일치가있을 수 있습니다. 이 경우토토 결과 세트모든 경기에서 행동합니다. 비 스키마 자격이없는 이름의 경우 검색 경로의 일부 스키마에서 일치 또는 경기가 발견되면 경로에 나중에 나타나는 스키마는 검색되지 않습니다.

이 명령은 현재 트랜잭션 내의 제약 조건을 변경합니다. 트랜잭션 블록 외부 에서이 문제를 발급하면 경고가 나오고 효과가 없습니다.

호환성

이 명령은 SQL 표준에 정의 된 동작을 준수합니다.postgresql, 그것은 적용되지 않습니다NOT NULLandcheck토토 결과. 또한,postgresql표준이 제안한대로 진술이 끝나지 않고, 정류 할 수없는 고유성 제약 조건을 즉시 확인하십시오.

정정 제출

문서에 맞지 않는 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면