초보자이지만 다른 테이블의 속성에 종속 된 속성을 만들 수 있습니까? 그러나, Danes
및 Degrees
모두의 INT AUTO_INCREMENT PRIMARY KEY
을 가지고MySQL은 다른 테이블의 속성을 설정하여 테이블을 만들까요?
CREATE TABLE DaneDegrees (
DanesId INT REFERENCES danes(id),
Level VARCHAR(10),
Subject VARCHAR(20),
FOREIGN KEY fk_level_subject(level, subject) REFERENCES Degree(level, Subject)
);
나는 것 :
CREATE TABLE danes (
id INT PRIMARY KEY,
name VARCHAR(50),
nationality VARCHAR(20),
gender CHAR(1),
degree SET ?????????????????? from degree(level)
);
CREATE TABLE degree (
level VARCHAR(10),
subject VARCHAR(20),
institutionawarding VARCHAR(20),
yearawarded DATE,
PRIMARY KEY (level, subject)
);
내가 다른 테이블, 접합 테이블을 원하는 추측하고 그것을
당신이 [외래 키]에 대해 얘기 (http://dev.mysql.com/doc/refman/5.6/en/create-table (에서 * 다른 테이블 _를 선택) -foreign-keys.html)? – Mureinik
나는 당신이 달성하고자하는 것이 확실하지 않습니다. 어떤 학위가 그들 사이에 연결이 없을 때 개인 "덴마크"에 나타나야합니까? 아니면 그들을 연결하는 방법을 묻고 있습니까? –
+1 @ GordonLinoff의 답변이지만 이것이 작동하지 않는 이유는 SET의 정의를 변경하기 위해'degree.level'에 새로운 값이 필요하기 때문입니다. 64 개 이상의 '레벨'값이있을 때 어떻게됩니까? (MySQL의 SET 데이터 타입은 64 요소로 제한됩니다.) –