MySQL数据库中的错误1451是什么意思?

时间:2015-03-21 05:09:54

标签: mysql database

我只是在我的sql-yog中运行删除查询,我被这个错误带走了。 任何人都可以给我一个解释我的错误。

Cannot delete or update a parent row: a foreign key constraint fails (`db_lakshyaassets3`.`lss_entity`, CONSTRAINT `FK_lss_entity_aid` FOREIGN KEY (`address_id`) REFERENCES `lss_address` (`address_id`))

3 个答案:

答案 0 :(得分:2)

FOREIGN KEY约束的一个属性是它用于防止会破坏表之间链接的操作。因此,您无法删除与另一个表共享FOREIGN KEY约束的表中的行而不在父项中删除。

您可以通过两种方式处理此问题:

  • 将外键与ON DELETE CASCADE一起使用(如果删除父项,将删除子行)reference

  • 将外键与ON DELETE NO ACTION一起使用(删除父项没有例外,但您的数据将变得毫无意义)

您收到此错误,因为默认属性为ON DELETE RESTRICT

HTH

答案 1 :(得分:0)

有外键指向该表....这是你无法删除它的原因。 您必须删除子表中的第一个行...子表是引用表。外键包含在子表中

答案 2 :(得分:0)

您可以通过删除外键约束来检查以下链接

http://www.justin-cook.com/wp/2006/05/09/how-to-remove-foreign-keys-in-mysql/

删除并删除数据后,您可以再次添加外键约束。使用以下链接中的alter query

http://www.w3schools.com/sql/sql_foreignkey.asp