Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL错误:1452-无法添加或更新子行:外键约束失败_Mysql_Database_Foreign Keys_Foreign Key Relationship - Fatal编程技术网

MySQL错误:1452-无法添加或更新子行:外键约束失败

MySQL错误:1452-无法添加或更新子行:外键约束失败,mysql,database,foreign-keys,foreign-key-relationship,Mysql,Database,Foreign Keys,Foreign Key Relationship,我能够成功地在业务表中插入行,但无法在业务联系人表中插入行。每当我尝试在business_contact表中插入一行时,都会出现以下错误: 1452-无法添加或更新子行:外键约束失败 尽管我尝试插入到business_contact表中的行具有业务表中已存在的BusinessID 业务联系人插入语句失败 INSERT INTO business_contact(BusinessID, BusinessContactTypeID, BusinessContactData) VALUES (1, 1

我能够成功地在业务表中插入行,但无法在业务联系人表中插入行。每当我尝试在business_contact表中插入一行时,都会出现以下错误:

1452-无法添加或更新子行:外键约束失败

尽管我尝试插入到business_contact表中的行具有业务表中已存在的BusinessID

业务联系人插入语句失败

INSERT INTO business_contact(BusinessID, BusinessContactTypeID, BusinessContactData) VALUES (1, 1, '0097336031000');

您应该在业务和联系人类型查找表中检查以下内容: 1.业务表具有您正试图插入到业务联系人中的BusinessID值 2.contact\u type\u lookuptable具有您试图插入到business\u contact中的contacttypeid值

此错误与缺少BusinessID或ContactTypeID有关。要验证这一点,请从业务表中选择BusinessID记录,并从contact_type_查找表中选择ContactTypeID

例如: 如果您正在执行以下查询:

insert into business_contact(BusinessContactID, BusinessID, BusinessContactTypeID, BusinessContactData) values ('1', '2', '3', 'This is the business contact data');
然后,确保以下查询返回有效结果:

select BusinessID from business where BusinessID = 2;

select ContactTypeID from business_contact_type where ContactTypeID = 3;

我验证了两行都存在,但得到的错误相同。如果有帮助,这就是确切的错误消息:1452-无法添加或更新子行:外键约束失败algallaf_dev.business_contact,constraint fk_BusinessContact_business外键BusinessID在删除时引用BusinessID在更新时不执行任何操作请发布以下结果:desc business;和desc business_contact;。如果你有任何索引,也请分享。我从上面的截图中删除了额外的列,因此你可能会找到其他信息成功地将业务表插入BusinessID、BusinessName、BusinessDescription值1、Stackoverflow、世界上最棒的站点!;成功的联系人类型查找表插入到联系人类型查找联系人类型ID,联系人类型描述值1,网站;未能将业务联系人表插入业务联系人businessid、BusinessContactTypeID、BusinessContactData值1,1、+973-36031000;我将业务表引擎从MyISAM更改为InnoDB,解决了这个问题。谢谢你的帮助。