【发布时间】:2015-08-19 00:56:24
【问题描述】:
这是我的查询:
create table if not exists applications (
idResearch int not null,
idProf char(10) not null,
primary key (idResearch, idProf),
foreign key (idResearch) references research(idResearch),
foreign key (idProf) references professor(idProf)
);
这是桌子:
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('10', '123456789');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('10', '432156789');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('10', '789654321');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('11', '876098432');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('11', '234567890');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('12', '432156789');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('12', '789654321');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('13', '876098432');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('14', '876098432');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('14', '987654321');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('15', '432156789');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('16', '123456789');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('16', '432156789');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('16', '789654321');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('17', '789654321');
INSERT INTO `university`.`applications` (`idResearch`, `idProf`) VALUES ('17', '432156789');
15:26:13 如果不存在应用程序(idResearch int not null,idProf char(10) not null,主键(idResearch,idProf),外键(idResearch)引用研究(idResearch),外键( idProf)引用教授(idProf))错误代码:1215。无法添加外键约束0.109秒
【问题讨论】:
-
你在哪里得到错误?注意:我非常喜欢 id 列是自动递增的列。
-
0 118 15:01:50 INSERT INTO
university.applications(idResearch,idProf) VALUES ('10', '123456789') 错误代码: 1054。未知列'字段列表'中的'idProf' 0.000 秒 -
我认为您发布的
INSERT声明没有任何问题。你确定没有特殊字符吗? -
特殊字符是什么意思?我不这么认为
-
您的代码(稍作修改)适用于 SQL Fiddle (sqlfiddle.com/#!9/25331)。我怀疑你在
create table声明中的性格不好。或者两个具有不同表结构的数据库。