일반적으로 참조하는 열 (예제에서는 Venues
)을 포함하는 테이블은 '하위'테이블입니다. 참조 된 열 (예 : Venue_Types
)이 들어있는 테이블은 '상위'테이블입니다. 일반적으로 참조 된 열은 테이블의 기본 키입니다. 테이블의 고유 ID 또는 후보 키 여야합니다.
Venues
테이블의 venue_type
열은 외래 키 열이므로 FK로 표시됩니다. 참조 된 표인 Venue_types
테이블에 있어야하는 값을 포함합니다. 참조 된 테이블에 복합 기본 키가있는 경우 복합 외래 키를 가질 수 있습니다.
후보 키가 여러 개인 테이블을 가질 수 있지만 테이블에는 기본 키가 하나만있을 수 있습니다. '요소 표'를 고려하십시오. 가에 의해 표현 될 수 있습니다 열 Symbol
, Name
및 Atomic_Number
의
CREATE TABLE elements
(
atomic_number INTEGER NOT NULL PRIMARY KEY CONSTRAINT c1_elements
CHECK (atomic_number > 0 AND atomic_number < 120),
symbol CHAR(3) NOT NULL UNIQUE CONSTRAINT c2_elements,
name CHAR(20) NOT NULL UNIQUE CONSTRAINT c3_elements,
atomic_weight DECIMAL(8,4) NOT NULL,
period SMALLINT NOT NULL
CHECK (period BETWEEN 1 AND 7),
group CHAR(2) NOT NULL
-- 'L' for Lanthanoids, 'A' for Actinoids
CHECK (group IN ('1', '2', 'L', 'A', '3', '4', '5', '6',
'7', '8', '9', '10', '11', '12', '13',
'14', '15', '16', '17', '18')),
stable CHAR(1) DEFAULT 'Y' NOT NULL
CHECK (stable IN ('Y', 'N'))
);
각은 완벽하게 좋은 후보 키입니다. Atomic_Number
을 기본 키 (동위 원소 및 핵 물리학에 가장 유용함)로 사용했지만 화학에 더 관심이 있다면 Symbol
을 선택하는 것이 좋습니다.
마크와 조나단에게 감사드립니다. 둘 다 감사합니다 내 데이터베이스를 마무리하고 잘하면 그것을 작동 :) – pufAmuf