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中RawString的理解介绍
Jul 07 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
Feb 08 Python
对python的文件内注释 help注释方法
May 23 Python
Tensorflow卷积神经网络实例
May 24 Python
Python数据可视化:幂律分布实例详解
Dec 07 Python
利用python在excel中画图的实现方法
Mar 17 Python
Python如何操作office实现自动化及win32com.client的运用
Apr 01 Python
Python unittest单元测试openpyxl实现过程解析
May 27 Python
为什么称python为胶水语言
Jun 16 Python
Keras 中Leaky ReLU等高级激活函数的用法
Jul 05 Python
TensorFlow2.0使用keras训练模型的实现
Feb 20 Python
利用Python如何画一颗心、小人发射爱心
Feb 21 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
php 多个submit提交表单 处理方法
2009/07/07 PHP
解决php接收shell返回的结果中文乱码问题
2014/01/23 PHP
laravel实现分页样式替换示例代码(增加首、尾页)
2017/09/22 PHP
firefo xml 读写实现js代码
2009/06/11 Javascript
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
2009/08/28 Javascript
EXT窗口Window及对话框MessageBox
2011/01/27 Javascript
iphone safari不支持position fixed的解决方法
2012/05/04 Javascript
Js 导出table内容到Excel的简单实例
2013/11/19 Javascript
javascript弹出层输入框(示例代码)
2013/12/11 Javascript
Node.js与PHP、Python的字符处理性能对比
2014/07/06 Javascript
Javascript实现苹果悬浮虚拟按钮
2016/04/10 Javascript
js实现四舍五入完全保留两位小数的方法
2016/08/02 Javascript
vue 粒子特效的示例代码
2017/09/19 Javascript
JavaScript使用享元模式实现文件上传优化操作示例
2018/08/07 Javascript
微信小程序服务器日期格式化问题
2020/01/07 Javascript
vue+axios 拦截器实现统一token的案例
2020/09/11 Javascript
Vue使用v-viewer实现图片预览
2020/10/21 Javascript
记录Django开发心得
2014/07/16 Python
Python cookbook(数据结构与算法)字典相关计算问题示例
2018/02/18 Python
Python3.5 Pandas模块之DataFrame用法实例分析
2019/04/23 Python
Mac安装python3的方法步骤
2019/08/09 Python
django API 中接口的互相调用实例
2020/04/01 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
2020/04/07 Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
2020/11/30 Python
Python中Qslider控件实操详解
2021/02/20 Python
DC Shoes俄罗斯官网:美国滑板鞋和服饰品牌
2020/08/19 全球购物
高中数学教师求职信
2013/10/30 职场文书
电子信息专业自荐书
2014/02/04 职场文书
司法所长先进事迹
2014/06/02 职场文书
酒后驾车标语
2014/06/30 职场文书
公司合作协议范文
2014/10/01 职场文书
党政领导班子群众路线对照检查材料
2014/10/26 职场文书
工作疏忽检讨书500字
2014/10/26 职场文书
毕业证明书
2015/06/19 职场文书
2016年妇联“6﹒26国际禁毒日”宣传活动总结
2016/04/05 职场文书
Django基础CBV装饰器和中间件
2022/03/22 Python