[英]Cannot add or update a child row: a foreign key constraint fails
These are the create statement for the two tables that i am facing the issue with: First Table: 这些是我面临问题的两个表的create语句:第一个表:
CREATE TABLE `hrm__companyteam` (
`id_team` int(11) NOT NULL AUTO_INCREMENT,
`id_department` int(11) NOT NULL,
`team_name` varchar(255) NOT NULL DEFAULT '',
`notes` mediumtext NOT NULL,
PRIMARY KEY (`id_team`),
KEY `id_company` (`id_department`),
CONSTRAINT `hrm__companyTeam_ibfk_1` FOREIGN KEY (`id_department`) REFERENCES `hrm__companydepartment` (`id_department`) ON DELETE CASCADE,
CONSTRAINT `hrm__companyteam_ibfk_1` FOREIGN KEY (`id_department`) REFERENCES `hrm__companydepartment` (`id_department`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
Second Table 第二表
CREATE TABLE `hrm__companyjobtitle` (
`id_job_title` int(11) NOT NULL AUTO_INCREMENT,
`id_team` int(11) NOT NULL DEFAULT '0',
`job_title_name` varchar(255) NOT NULL DEFAULT '',
`notes` mediumtext NOT NULL,
PRIMARY KEY (`id_job_title`),
KEY `id_division` (`id_team`),
CONSTRAINT `hrm__companyJobTitle_ibfk_1` FOREIGN KEY (`id_team`) REFERENCES `hrm__companyteam` (`id_team`) ON DELETE CASCADE,
CONSTRAINT `hrm__companyjobtitle_ibfk_1` FOREIGN KEY (`id_team`) REFERENCES `hrm__companyteam` (`id_team`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
When i try to execute the following query: 当我尝试执行以下查询时:
INSERT INTO `hr_db`.`hrm__companyjobtitle` (
`id_job_title` ,
`id_team` ,
`job_title_name` ,
`notes`
)
VALUES (
'1', '1', 'IT', ''
)
I get this error: 我收到此错误:
hr_db
. hrm__companyjobtitle
, CONSTRAINT hrm__companyJobTitle_ibfk_1
FOREIGN KEY ( id_team
) REFERENCES hrm__companyteam
( id_team
) ON DELETE CASCADE) hr_db
无法添加或更新子行:外键约束失败( hrm__companyjobtitle
,CONSTRAINT hrm__companyJobTitle_ibfk_1
键( id_team
)参考hrm__companyteam
( id_team
)删除id_team
Please help... What am i doing wrong. 请帮助...我在做什么错。 Also please let me know if you need any further details. 另外,如果您需要任何其他详细信息,请告诉我。
I used these statements : 我使用了以下语句:
CREATE TABLE `hrm__companyteam` (
`id_team` INT(11) NOT NULL AUTO_INCREMENT,
`id_department` INT(11) NOT NULL,
`team_name` VARCHAR(255) NOT NULL DEFAULT '',
`notes` MEDIUMTEXT NOT NULL,
PRIMARY KEY (`id_team`),
INDEX `id_company` (`id_department`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=4;
CREATE TABLE `hrm__companyjobtitle` (
`id_job_title` INT(11) NOT NULL AUTO_INCREMENT,
`id_team` INT(11) NOT NULL DEFAULT '0',
`job_title_name` VARCHAR(255) NOT NULL DEFAULT '',
`notes` MEDIUMTEXT NOT NULL,
PRIMARY KEY (`id_job_title`),
INDEX `id_division` (`id_team`),
CONSTRAINT `hrm__companyJobTitle_ibfk_1` FOREIGN KEY (`id_team`) REFERENCES `hrm__companyteam` (`id_team`) ON DELETE CASCADE
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=4;
INSERT INTO hrm__companyteam (id_team, id_department, team_name, notes) VALUES (1, 1, 'Sales', ''), (2, 2, 'Team no 1', '');
INSERT INTO hrm__companyjobtitle (id_job_title , id_team , job_title_name , notes ) VALUES ( '1', '1', 'IT', '' );
AND ALL of them ran successfully without any error 他们全部成功运行,没有任何错误
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.