외국의 주요 제약 조건, 뷰, 트리거, 기능 등을 갖춘 많은 테이블과 관련된 복잡한 데이터베이스 구조를 만들 때 객체간에 종속성의 순을 암시 적으로 만듭니다. 예를 들어, 외국 키 제약 조건이있는 테이블은 참조하는 테이블에 따라 다릅니다.
전체 데이터베이스 구조의 무결성을 보장하려면PostgreSQL다른 객체가 여전히 스포츠 토토 사이트하는 객체를 드롭 할 수 없는지 확인하십시오. 예를 들어, 우리가 고려한 제품 테이블을 삭제하려고섹션 5.3.5에 따라 주문 테이블이있는 경우 다음과 같은 오류 메시지가 발생합니다.
드롭 테이블 제품;
오류 메시지에는 유용한 힌트가 포함되어 있습니다.
드롭 테이블 제품 캐스케이드;
그리고 모든 종속 객체는 재귀 적으로 스포츠 토토 사이트하는 객체와 마찬가지로 제거됩니다. 이 경우 주문 테이블을 제거하지 않고 외래 키 제약 조건 만 제거됩니다.드롭 ... 캐스케이드
will do, run드롭
없음캐스케이드
읽기세부 사항
출력.)
거의 모든드롭
명령PostgreSQL지원 지정캐스케이드
. 물론 가능한 종속성의 특성은 물체의 유형에 따라 다릅니다.제한
대신캐스케이드
기본 동작을 얻으려면 다른 객체가 스포츠 토토 사이트하는 객체를 삭제하는 것을 방지하는 것입니다.
SQL 표준에 따라 어느 쪽이든 지정제한
또는캐스케이드
at드롭
명령. 데이터베이스 시스템은 실제로 해당 규칙을 시행하지 않지만 기본 동작이제한
또는캐스케이드
시스템마다 다릅니다.
a드롭
명령은 여러 개체를 나열합니다.캐스케이드
지정된 그룹 외부에 종속성이있을 때만 필요합니다. 예를 들어, 말할 때드롭 테이블 tab1, tab2
외국 키 참조의 존재tab1
Fromtab2
캐스케이드
성공하려면 필요합니다.
사용자 정의 함수의 경우PostgreSQL인수 및 결과 유형과 같은 함수의 외부가 가시 가능한 속성과 관련된 종속성을 추적하지만not기능 본문을 검사 하여만 알 수있는 종속성. 예를 들어,이 상황을 고려하십시오 :
Enum ( 'Red', 'Orange', 'Yellow'로 유형 무지개를 만듭니다.
(참조섹션 37.4SQL 언어 함수에 대한 설명.)PostgreSQLget_color_note
함수는에 따라 다릅니다.Rainbow
유형 : 인수 유형이 더 이상 정의되지 않기 때문에 유형을 삭제하면 기능이 삭제됩니다. 하지만PostgreSQL고려하지 않을 것입니다get_color_note
에 스포츠 토토 사이트하려면my_colors
테이블이므로 테이블이 삭제되면 기능이 떨어지지 않습니다. 이 접근법에는 단점이 있지만 이점도 있습니다.