我在尝试创建学生表时遇到错误。我用外键收到错误。它说我有一个无效的标识符,但我仔细检查了studtype表以确保,我没有看到差异。任何帮助将不胜感激。
语句
CREATE TABLE STUDENT
(STUDID VARCHAR2(10) NOT NULL,
STUDNAME VARCHAR2(30),
STUDADDRESS VARCHAR2(30),
STUDTELNO VARCHAR2(17),
CONSTRAINT PKSTUD PRIMARY KEY(STUDID),
CONSTRAINT FKSTYPE FOREIGN KEY(STUDTYPE) REFERENCES STUDTYPE(STUDTYPE) ON DELETE CASCADE));
错误:ORA-00904:" STUDTYPE":无效标识符
CREATE TABLE STUDTYPE
(STUDTYPE VARCHAR2(30) NOT NULL,
CONSTRAINT PKSTYPE PRIMARY KEY(STUDTYPE));
答案 0 :(得分:0)
您应该在学生表中有一个STUDTYPE列。因此,学生表的创建脚本应如下所示
CREATE TABLE STUDENT
(STUDID VARCHAR2(10) NOT NULL,
STUDTYPE VARCHAR2(30),
STUDNAME VARCHAR2(30),
STUDADDRESS VARCHAR2(30),
STUDTELNO VARCHAR2(17),
CONSTRAINT PKSTUD PRIMARY KEY(STUDID),
CONSTRAINT FKSTYPE FOREIGN KEY(STUDTYPE) REFERENCES STUDTYPE(STUDTYPE) ON DELETE CASCADE));