简体   繁体   English

无法以外键为主键添加外键约束

[英]Cannot add foreign key constraint with foreign key being primary

I am getting the 我正在

Error Code: 1215. Cannot add foreign key constraint 0.172 sec

I don't know what I am doing wrong. 我不知道我在做什么错。 I made sure that the foreign key is a primary key. 我确保外键是主键。 My sql: 我的SQL:

CREATE TABLE Student (
StudentID INT(6) NOT NULL,
StudName VARCHAR(15) NOT NULL,
StudEmail VARCHAR(15) NOT NULL,
StudeHomeNum INT(10) NOT NULL,
StudCellPhoneNum INT(10) NOT NULL,
CourseCode INT(6) NOT NULL,
ProgramCode INT(6) NOT NULL,
PRIMARY KEY (StudentID),
FOREIGN KEY (CourseCode)
    REFERENCES Course (CourseCode)
);

CREATE TABLE Course (
CourseCode INT(6) PRIMARY KEY NOT NULL,
CourseName VARCHAR(15) NOT NULL,
Prequisites VARCHAR(15) NOT NULL
);

Since CourseCode code column in Student table is referencing Course table, you have to create Course table first. 由于Student表中的CourseCode代码列引用了Course表,因此您必须首先创建Course表。 Change your sql code as below 如下更改您的SQL代码

CREATE TABLE Course (
CourseCode INT(6) PRIMARY KEY NOT NULL,
CourseName VARCHAR(15) NOT NULL,
Prequisites VARCHAR(15) NOT NULL
);

CREATE TABLE Student (
StudentID INT(6) NOT NULL,
StudName VARCHAR(15) NOT NULL,
StudEmail VARCHAR(15) NOT NULL,
StudeHomeNum INT(10) NOT NULL,
StudCellPhoneNum INT(10) NOT NULL,
CourseCode INT(6) NOT NULL,
ProgramCode INT(6) NOT NULL,
PRIMARY KEY (StudentID),
FOREIGN KEY (CourseCode)
    REFERENCES Course (CourseCode)
);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM