테이블 구조가 있습니다. 나는 최선의 방법을 만드는 방법을 잘 모릅니다.외래 키를 참조하는 복합 테이블
기본적으로 나는 두 개의 테이블, tblSystemItems 및 tblClientItems가 있습니다. '항목'을 참조하는 열이있는 세 번째 테이블이 있습니다. 문제는이 열이 시스템 항목이나 클라이언트 항목을 참조해야한다는 것입니다. 시스템 항목에는 1..2^31 범위의 키가 있지만 클라이언트 항목에는 -1 .. -2^31 범위의 키가 있으므로 충돌이 발생하지 않습니다.
항목을 쿼리 할 때마다 두 테이블의 내용 사이에 UNION ALL을 수행하는 뷰를 통해이를 수행합니다.
따라서 뷰를 항상 고유하게 유지하면서 뷰가 항상 두 테이블의 합집합이되므로 외래 키 참조를 뷰의 결과로 만들고 싶습니다. 그러나 내가 견해를 언급 할 수 없기 때문에 나는 이것을 할 수 없다.
이제 외래 키를 삭제할 수 있으며 모든 것이 정상입니다. 그러나, 난 정말 일부 참조 검사 및 계단식 삭제/null 기능을 설정하고 싶습니다. 트리거 외에, 이것을 할 방법이 있습니까?
피트 (Pete)의 사랑을 위해 "TBL"로 표를 붙이지 마십시오. 그것은 총체적이고 구역질이 나고 동시에 두려울 것입니다. –