2014-01-17 3 views
0

ibm db2 데이터베이스에서 TABLE1과 TABLE2의 두 테이블이 있습니다. 또한 TABLE1에 논리 파일 LOGICAL1이 있습니다. LOGICAL1은 일부 TABLE1 필드의 값에 따라 TABLE1의 레코드를 필터링합니다. (그것은 SQL 뷰와 같다)보기에 외부 키 제한 조건을 추가하십시오.

TABLE2와 논리적 파일 LOGICAL1 사이에 외래 제약 조건을 추가하고 싶다.

내가 그것을하려고 할 때 LOGICAL1이 외부 키 절에 유효하지 않다는 오류 메시지 SQ0157이 있는데, 논리 파일이나 뷰를 외부 키 절에 지정할 수 없다는 오류 메시지가 나타납니다.

필터링 된 테이블에 제약 조건이 있습니까?

답변

2

제약 조건은 모든 자식 행에 부모 행이 있음을 의미합니다.

삽입/쓰기가 허용되는지 여부를 확인하기 위해 LOGICAL1을 사용하는 하위 테이블에 트리거를 작성하는 것을 고려하십시오.

1

, FK 제약은 물리적 테이블에 적용됩니다. AFAIK,이 규칙은 모든 RDBMS 시스템에 적용됩니다.

그러나 물리적으로 제약 조건을 적용하면 효과가보기에 표시됩니다.

찰스