2017-12-01 4 views
0

Postgres 테이블에서 제약 조건을 삭제할 때 제약 조건을 삭제하는 가장 안전한 순서를 아는 방법. Like
1) 외래 키 제약 조건은 먼저 삭제할 수 있습니다. [기본 키 제약 조건 전에 droppped해야하기 때문에]Postgres 제약 조건 삭제

그런 다음 제약 조건 제거 순서는 임의의 순서가 될 수 있습니다. 고유 한 제한 조건, null이 아니고, 기본, 기본 키 제한 조건과 같습니다. 올바른지

+1

** 단일 ** 테이블에 대한 제약 조건을 삭제하면 실제로는 관련이 없습니다. 그리고 만약 당신이 'CASCADE'를 사용한다면, 여러 테이블에서 제약 조건을 삭제할 때도 순서가 무의미합니다. –

+0

캐스케이드가 사용되지 않으면 위의 순서를 무효로 할 경우를 알고 싶습니다. – Priya

+0

실제로 케이스를 알게되어 매우 기쁩니다. @a_horse_with_no_name – Priya

답변

1

PostgreSQL 테이블에 대한 제약 조건은 동일한 테이블의 다른 제약 조건에 따라 달라 지므로 여기서 순서는 중요하지 않습니다.

유일한 종속성은 외래 키가 대상 테이블의 기본 키 또는 고유 키에 종속된다는 것입니다.

먼저 모든 외래 키 제약 조건을 제거한 다음 다른 모든 제약 조건을 제거하거나 ALTER TABLE ... DROP CONSTRAINT ... CASCADE을 사용하면 모든 종속 제약 조건이 자동으로 삭제되므로 순서를 전혀 신경 쓸 필요가 없습니다.

+0

정말 도움이되었습니다. 감사 :) – Priya

관련 문제