>  기사  >  데이터 베이스  >  관계형 데이터베이스에서 여러 테이블에 대한 외래 키가 가능합니까?

관계형 데이터베이스에서 여러 테이블에 대한 외래 키가 가능합니까?

DDD
DDD원래의
2024-10-24 03:58:30760검색

Is a Foreign Key to Multiple Tables Possible in Relational Databases?

여러 테이블 중 하나에 대한 외래 키: 가능한가요?

관계형 데이터베이스에서는 외래 키를 사용하여 테이블 간의 관계를 설정합니다. 일반적으로 한 테이블의 외래 키는 다른 테이블의 기본 키를 가리킵니다. 그러나 외래 키가 여러 테이블 중 하나를 참조할 수 있습니까?

답변: 아니요

외래 키 제약 조건은 항상 정확히 하나의 상위 테이블을 참조합니다. 이는 여러 가능한 테이블 중 하나를 가리키는 외래 키를 정의할 수 없음을 의미합니다. 이 동작은 MySQL과 PostgreSQL 모두에서 동일합니다.

다형성 관계에 대한 의미

다형성 관계는 테이블이 여러 다른 테이블 중 하나와 관계를 가질 수 있는 경우입니다. 제공된 예에서 "images" 테이블은 "subordinates" 또는 "products"라는 두 테이블 중 하나와 관계가 있습니다.

이러한 경우 다음을 가리키는 외래 키를 직접 생성할 수 없습니다. "하위 제품" 또는 "제품" 중 하나입니다. 대신 관계를 설정하려면 조인 테이블을 명시적으로 정의해야 합니다. 조인 테이블에는 "하위"와 "제품" 모두에 대한 외래 키가 포함되어 있으며, "이미지" 테이블에는 조인 테이블을 참조하는 외래 키가 있습니다.

추가 리소스

이 주제에 대해 자세히 알아보려면 다음 리소스를 고려하세요.

위 내용은 관계형 데이터베이스에서 여러 테이블에 대한 외래 키가 가능합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.