이 문서는 지원되지 않는 버전의 사설 토토 사이트을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 5.15. 토토 사이트 추천성 추적버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

5.14. 의존성 추적

외국의 주요 제약 조건, 뷰, 트리거, 기능 등이있는 많은 테이블과 관련된 복잡한 데이터베이스 구조를 만들 때 객체간에 종속성의 순을 암시 적으로 만듭니다. 예를 들어, 외국 키 제약 조건이있는 테이블은 참조하는 테이블에 따라 다릅니다.

전체 데이터베이스 구조의 무결성을 보장하려면사설 토토 사이트다른 객체가 여전히 의존하는 객체를 삭제할 수 없는지 확인하십시오. 예를 들어, 우리가 고려한 제품 테이블을 삭제하려고섹션 5.4.5에 따라 주문 테이블이있는 경우 다음과 같은 오류 메시지가 발생합니다.

드롭 테이블 제품;

오류 : 다른 객체가 그것에 의존하기 때문에 테이블 제품을 삭제할 수 없습니다.
세부 사항 : 제약 조건 Orders_Product_no_fkey 테이블 주문에 따라 테이블 제품에 따라 다릅니다.
힌트 : Drop ... Cascade를 사용하여 종속 객체를 떨어 뜨립니다.

오류 메시지에는 유용한 힌트가 포함되어 있습니다.

드롭 테이블 제품 캐스케이드;

그리고 모든 종속 객체는 재귀 적으로 의존하는 객체와 마찬가지로 제거됩니다. 이 경우 주문 테이블을 제거하지 않고 외래 키 제약 조건 만 제거됩니다. 외국의 주요 제약에 의존하지 않기 때문에 거기서 멈 춥니 다. (무엇을 확인하고 싶다면드롭 ... 캐스케이드will do, run드롭없음캐스케이드읽기세부 사항출력.)

거의 모든드롭명령사설 토토 사이트지원 지정캐스케이드. 물론 가능한 종속성의 특성은 물체의 유형에 따라 다릅니다. 당신은 또한 쓸 수 있습니다제한대신캐스케이드기본 동작을 얻으려면 다른 객체가 의존하는 객체를 삭제하는 것을 방지하는 것입니다.

Note

SQL 표준에 따라 어느 쪽이든 지정제한또는캐스케이드at드롭명령. 데이터베이스 시스템은 실제로 해당 규칙을 시행하지 않지만 기본 동작이제한또는캐스케이드시스템마다 다릅니다.

if a드롭명령은 여러 개체를 나열합니다.캐스케이드지정된 그룹 외부에 종속성이있을 때만 필요합니다. 예를 들어, 말할 때드롭 테이블 tab1, tab2외국 키 참조의 존재tab1Fromtab2캐스케이드성공하려면 필요합니다.

사용자 정의 함수의 경우사설 토토 사이트인수 및 결과 유형과 같은 함수의 외부가 가시 가능한 속성과 관련된 종속성을 추적하지만아님기능 본문을 검사 하여만 알 수있는 종속성. 예를 들어,이 상황을 고려하십시오 :

Enum ( 'Red', 'Orange', 'Yellow'로 유형 무지개를 만듭니다.
                             '녹색', '파란색', '보라색');

테이블 my_colors (색상 무지개, 참고 텍스트)를 만듭니다.

함수 생성 get_color_note (Rainbow) 텍스트를 반환합니다
  'color = $ 1'인 my_colors에서 메모를 선택하십시오.
  언어 SQL;

(참조PostgreSQL : 문서 : 4 | 스포츠 토토 사이트SQL 언어 함수에 대한 설명.)사설 토토 사이트get_color_note함수는에 따라 다릅니다.레인보우유형 : 인수 유형이 더 이상 정의되지 않기 때문에 유형을 삭제하면 기능이 삭제됩니다. 하지만사설 토토 사이트고려하지 않을 것입니다get_color_note에 의존하려면my_colors테이블이므로 테이블이 삭제되면 기능이 떨어지지 않습니다. 이 접근법에는 단점이 있지만 이점도 있습니다. 테이블이 누락 된 경우 기능이 여전히 유효하지만 실행하면 오류가 발생합니다. 같은 이름의 새 테이블을 만들면 기능이 다시 작동 할 수 있습니다.