대체키
대체 키는 기본 키로 선택되지 않은 후보 키입니다. 이름에서 알 수 있듯이 교체 키는 기본 키로 대체할 수 있지만 기본 키가 아닌 이유가 있을 수 있습니다. 기본 키를 선택할 때 고려해야 할 사항을 고려하여 고객 관계의 기본 키로 고객 ID 속성을 쉽게 선택할 수 있습니다([주소 속성이 추가된 관계 예). 따라서 기본 키로 선택되지 않은 속성 집합(고객 이름, 주소)이 대체 키가 됩니다.
다른 관계와 관련하여 고려할 수 있는 외부 키도 있습니다. 다음으로 우리는 외국어를 살펴볼 것이다.
외래키
외부 키는 관계에 속하는 속성 또는 속성 집합이 다른 관계의 주 키가 되는 키입니다. 즉, 다른 관계의 기본 키를 참조하는 Atlibete 집합이 외부 키입니다. 관계를 올바르게 표시하려면 외국어 키가 필요합니다.
외부 키의 개념과 필요성을 이해하기 위해 인터넷 쇼핑 몰 데이터베이스에서 고객 관계와 주문 관계 간의 관계를 고려합니다.
고객 관계에는 6가지 특성이 있으며 고객 ID 속성은 기본 키입니다. 또한 주문 관계에는 6개의 속성이 있으며, 여기서 주문 번호 속성은 기본 키입니다. 고객 관계의 기본 키인 Customer ID 특성을 참조하면 Customer Attribute External Key라고 합니다. 이 외부 키를 사용하면 고객 관계 및 주문 관계를 설정하고 주문 관계를 두 배로 늘릴 수 있는 두 개의 고객 관계에 액세스할 수 있습니다. 일반적으로 외부 키와의 관계라고 합니다. 주문 관계 및 고객 관계와 같은 기본 키를 지정합니다.
예를 들어 고객과의 관계 및 주문 관계와의 관계입니다. 외부 키, 속성 및 기본 키의 이름은 다를 수 있습니다. 그림에는 계약 관계의 외부 키인 클라이언트 속성 이름과 고객 관계의 기본 키인 클라이언트 ID 속성 이름이 다르지만 외부 키 속성의 도메인과 기본 키 속성의 도메인은이것은 동일할 것이다. 도메인이 동일한 경우에만 비교 작업으로 관련 패널을 찾을 수 있습니다. 외국어 키가 없으면 1월 1일에 제품을 구입한 고객의 이름을 검색할 수 없습니다. 2013년 1월에 주문했습니다.
외부 키가 참조 관계의 기본 키가 아닌 다른 템플릿을 가리키면 어떻게 됩니까? 기본 키가 아닌 경우 두 매개 변수를 구별하기가 어렵습니다. 계약 관계는 고객 관계의 기본 키가 아닌 고객 이름, 나이, 등급, 직업, 예비금의 특성과 관련이 있습니다. 이 경우 동일한 값의 테이블이 여러 개 있기 때문에 영향을 받는 테이블을 정확히 찾기가 어렵습니다. 따라서 외부 키는 다른 관계의 기본 키와 참조하는 외부 키 도메인과 동일하게 정의되어야 합니다.
학생들에게 조언하기 위해 우리의 데이터베이스에서 외국어 키를 사용하는 더 복잡한 예를 생각해 보자. 그것은 학생 상담 데이터베이스에 있는 학생 관계, 상담 관계, 교사 관계이다. 이 세 가지 관계는 외국어 키를 사용하여 서로 간의 관계를 나타냅니다.
컨설팅 관계의 클래스 번호 속성은 학생 관계의 기본 키인 클래스 번호 특성을 참조하는 외부 키이며, 교사 번호 속성은 교사 번호 특성을 나타냅니다. 또한 상담 관계의 기본 키는 각 선생님의 수업 번호와 두 개의 외국어 키의 조합으로 구성되어 있습니다. 이렇게 하면 관계에 여러 개의 외부 키가 존재할 수 있습니다. 외부 키를 기본 키로 사용하거나 외부 키를 포함한 기본 키를 설정할 수도 있습니다.
외부 키는 다른 관계가 아닌 다른 관계의 기본 키를 가리키는 키로 정의됩니다. 참조 관계는 참조 관계와 같을 수 있습니다. 즉, 외부 키가 속한 관계의 기본 키를 가리키도록 외부 키를 정의할 수 있습니다.
※ 일반적으로 각 데이터베이스 관리 시스템에는 PHP 값을 표시하는 다른 기호가 있기 때문에 공간이 사용됩니다. 그러나 이 책에서는 NULL 기호를 사용하여 NULL 값을 명확하게 표시했습니다.
고객 관계는 고객 ID를 기반으로 합니다. 또한 권장 고객 속성은 권장 고객의 ID를 의미하므로 동일한 관계의 고객 ID를 가리키는 외부 키입니다. h. 기본 키로 이동합니다. 이러한 방식으로 고객 관계는 관계에서 기본 및 외부 키로 나타납니다.이는 고객 관계가 자신의 관계와 관련이 있음을 의미합니다.
'데이터베이스' 카테고리의 다른 글
| 관계 데이터 연산 (0) | 2022.08.02 |
|---|---|
| 관계 데이터 모델의 제약 (0) | 2022.08.01 |
| 키의 종류(2) (0) | 2022.07.30 |
| 키의 종류 (0) | 2022.07.29 |
| 릴레이션과 데이터베이스의 구성(2) (0) | 2022.07.27 |