Django-migrate报错问题解决方案


Posted in Python onApril 21, 2020

python3 manage.py makemigrations # 生成数据库迁移文件
python3 manage.py migrate # 迁移数据库

简简单单两条命令就完成了django的数据库迁移

但是今天一天的时间都耽误在这了,一点都不夸张的那种,,早上去公司讨论需求之后,研究了一下需要更改一下数据库,在执行makemigrations的时候OK没有问题,但是migrate就报错了

1.报错: XX表已经存在,django.db.utils.OperationalError: (1050, "Table XX already exists

我:删表,但是报错,Cannot delete or update a parent row: a foreign key constraint fails 跟YY表存在外键关系,无法删除,

百度了一番之后:1、SET foreign_key_checks = 0; // 先设置外键约束检查关闭

2、drop table XX; // 删除数据,表或者视图

3、SET foreign_key_checks = 1; // 开启外键约束检查,以保持表结构完整性 

2.表删了之后重新执行migrate,又报错别的表存在,如此一直循环往复,我都怀疑这是人家写的一个while True,

我:找到了第二种解决方案:python manage.py migrate myapp --fake # 切记把myapp换成你要执行的APP名称

这条命令可以顺利执行,没有报错,但是又找不到对应生成的表在哪里,顶如还是说不能成功

3.将之前执行makemigrations生成的migrations文件夹删除,重新来过,OK,还是一样的毛病,

4.重新创建了database之后,重新来过,只生成了django自带的那几张表,然而项目里大多的数据存储都是依靠我在每一个app里创建的table里呀

5.将每个APP下的migrations都删掉,database也重新来过,好嘛,连最基本的数据库迁移文件夹都不能生成了,一瞬间有种悔不当初的感觉,但是又能怎么样呢,就是需要调整数据库呀

6.这个时候重头开始来过,千万不要慌,检查settings里是否把每一个APP都注册到,项目同名目录下的__init__.py里是否包含了

import pymysql

pymysql.install_as_MySQLdb()

7.没有问题之后这样去执行数据库迁移的命令 

python3 manage.py migrate # 生成django自带的数据库
python3 manage.py makemigrations appname # 将appname换成你要迁移的那个app的名称
python3 manage.py migrate appname # 同理,换名

至此,一个小小的问题,真的就花了我一天的时间,好在终于解决了,

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python编程修改MP3文件名称的方法
Apr 19 Python
python实现俄罗斯方块游戏
Mar 25 Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 Python
Python3日期与时间戳转换的几种方法详解
Jun 04 Python
python实现在函数图像上添加文字和标注的方法
Jul 08 Python
python实现门限回归方式
Feb 29 Python
python 穷举指定长度的密码例子
Apr 02 Python
django orm模块中的 is_delete用法
May 20 Python
Python爬虫抓取论坛关键字过程解析
Oct 19 Python
python自动化之如何利用allure生成测试报告
May 02 Python
pytorch损失反向传播后梯度为none的问题
May 12 Python
Python如何识别银行卡卡号?
Jun 10 Python
pandas读取csv文件提示不存在的解决方法及原因分析
Apr 21 #Python
jupyter 导入csv文件方式
Apr 21 #Python
tensorflow指定CPU与GPU运算的方法实现
Apr 21 #Python
Python多线程实现支付模拟请求过程解析
Apr 21 #Python
安装多个版本的TensorFlow的方法步骤
Apr 21 #Python
解决Jupyter notebook中.py与.ipynb文件的import问题
Apr 21 #Python
TensorFLow 数学运算的示例代码
Apr 21 #Python
You might like
js实现权限树的更新权限时的全选全消功能
2009/02/17 Javascript
jQuery事件 delegate()使用方法介绍
2012/10/30 Javascript
解析Jquery取得iframe中元素的几种方法
2013/07/04 Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
2013/11/22 Javascript
Nodejs实现批量下载妹纸图
2015/05/28 NodeJs
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
JS实现自动固定顶部的悬浮菜单栏效果
2015/09/16 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
2015/10/25 Javascript
详解vue-router 2.0 常用基础知识点之导航钩子
2017/05/10 Javascript
手把手教你搭建ES6的开发运行环境
2017/07/11 Javascript
浅谈Vue.js应用的四种AJAX请求数据模式
2017/08/30 Javascript
vue2.0 自定义 饼状图 (Echarts)组件的方法
2018/03/02 Javascript
vue2 设置router-view默认路径的实例
2018/09/20 Javascript
微信小程序解除10个请求并发限制
2018/12/18 Javascript
AngularJs中$cookies简单用法分析
2019/05/30 Javascript
jQuery实现轮播图源码
2019/10/23 jQuery
JS控制只能输入数字并且最多允许小数点两位
2019/11/24 Javascript
vue中watch和computed为什么能监听到数据的改变以及不同之处
2019/12/27 Javascript
关于Pycharm无法debug问题的总结
2019/01/19 Python
Python中字符串String的基本内置函数与过滤字符模块函数的基本用法
2019/05/27 Python
使用Django搭建一个基金模拟交易系统教程
2019/11/18 Python
利用python+ffmpeg合并B站视频及格式转换的实例代码
2020/11/24 Python
施华洛世奇韩国官网:SWAROVSKI韩国
2018/06/05 全球购物
医药工作者的求职信范文
2013/09/21 职场文书
个人找工作自荐信格式
2013/09/21 职场文书
公司庆典活动邀请函
2014/01/09 职场文书
财务人员求职自荐书范文
2014/02/10 职场文书
公司业务员岗位职责
2014/03/18 职场文书
捐款倡议书
2014/04/14 职场文书
社区两委对照检查材料
2014/08/23 职场文书
党的群众路线教育实践活动总结
2014/10/30 职场文书
拾金不昧表扬稿
2015/01/16 职场文书
单位租车协议书
2015/01/29 职场文书
南湾猴岛导游词
2015/02/09 职场文书
应届毕业生的自我评价
2019/06/21 职场文书
SpringBoot集成MongoDB实现文件上传的步骤
2022/04/18 MongoDB