我已经创建了如下表添加或更新子行:错误1452:无法A3ENROLL
A3STUDENT
CREATE TABLE A3STUNDENT(
STD_ID INTEGER NOT NULL,
STD_NAME VARCHAR(30),
STD_MAJOR CHAR(4),
STD_RANK CHAR(2),
CONSTRAINT PK_A3STUDENT PRIMARY KEY (STD_ID)
);
CREATE TABLE A3COURSE(
CRS_TIME VARCHAR(10),
CRS_ROOM CHAR(5),
CRS_ID CHAR(7) NOT NULL,
CONSTRAINT PK_A3COURSE PRIMARY KEY (CRS_ID)
);
CREATE TABLE A3ENROLL(
ENR_GRADE CHAR(1),
STD_ID INTEGER NOT NULL,
CRS_ID CHAR(7) NOT NULL,
CONSTRAINT PK_A3ENROLL PRIMARY KEY (STD_ID, CRS_ID),
CONSTRAINT FK_STD_ENR FOREIGN KEY (STD_ID) REFERENCES A3STUDENT(STD_ID),
CONSTRAINT FK_CRS_ENR FOREIGN KEY (CRS_ID) REFERENCES A3COURSE(CRS_ID)
);
当我去插入值,比如这个:
INSERT INTO A3ENROLL VALUES ('A', 100, 'MGMT445');
我收到此错误:
#1452 - Cannot add or update a child row: a foreign key constraint fails (
Hess
.A3ENROLL
, CONSTRAINTFK_CRS_ENR
FOREIGN KEY (CRS_ID
) REFERENCESA3COURSE
(CRS_ID
))
我似乎无法理解为什么我的数据不会插入。我忽略了什么?