首页 > 解决方案 > 如何修复 Azure MySQL 服务器上的“无法删除或更新父行”错误?

问题描述

我使用 Django 和 MySQL 8。

我有两个表作为例子:

class tbl1(models.Model):
    values = models.FloatField(blank=True, null=True)
    id = models.ForeignKey(tbl2, on_delete=models.PROTECT, blank=True, null=True)

class tbl2(models.Model):
    id = models.IntegerField(primary_key=True)
    year = models.BigIntegerField(blank=True, null=True)

在本地机器上,我可以运行以下代码:

            tbl1.objects.all().delete()
            tbl2.objects.all().delete()

但是它在 Azure 上失败了。我收到此错误:

处理文件时出错:(1451,'无法删除或更新父行:外键约束失败(db1. db1.tbl1, CONSTRAINT db1.tbl1_well_id_8be729cc_fk_tbl2_idFOREIGN KEY ( id) REFERENCES tbl2( id))')

我该如何解决?如何仅在 Azure 服务器上而不是在本地计算机上获取它?

标签: mysqldjango-modelsazure-mysql-database

解决方案


推荐阅读