0
点赞
收藏
分享

微信扫一扫

问题报错:

注意,这是一个衍生问题:

在产生Django makemigrations migrate 执行成功但不创建数据库中不创建表的问题后,我想要找到MySQL 数据库中有一张 django_migrations 表, (这张表里面有创建表的记录),删除对应的数据表记录,来重新创建我django应用所需要的数据表。

执行delete from django_migrations where app='yourappname';语句时候,产生的报错。

问题描述:

执行删除mySQL数据表语句时,出现的报错。

0

2

08:42:49

delete from django_migrations where app='polls'

Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect.

0.000 sec


分析原因:

这是因为MySql运行在safe-updates模式下,该模式会导致非主键条件下无法执行update或者delete命令。

解决方法:

一,执行show variables like 'SQL_SAFE_UPDATES';这一句sql命令,查看SQL_SAFE_UPDATES的开关状态。如下图:

问题报错:_SQL

二,执行 SET SQL_SAFE_UPDATES = 0;  或者 SET SQL_SAFE_UPDATES = false; 命令,修改SQL_SAFE_UPDATES的值。如下图:

问题报错:_django_02

三,重新执行我们的删除语句,如图下,然后成功。

问题报错:_django_03

四:如此,我们重新进行数据迁移,看mysql数据库中,是否出现我们的polls表。

问题报错:_django_04

如图,mysql中重新出现polls表。

问题报错:_创建表_05


举报

相关推荐

0 条评论