django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决


Posted in Python onJuly 13, 2018

一、现象

最近在数据库中删除了一张表,重新执行python manage.py migrate时出错,提示不存在这张表。通过查找相关的资料,最后找到了相关的解决方法,下面话不多说了,来一起看看详细的介绍吧

二、原因

主要是因为django一般在第一次迁移的时候新建表,后面的都不会新建表,而是只检查字段等等的变化,所以我们既然已经删除了这张表,django检查这张表的字段变化的时候就自然报错了。

三、解决办法

解决办法仍然是执行python manage.py makemigrations和python manage.py migrate,只不过在执行这个之前,把第一次执行迁移创建表的那个记录删除掉,否则它检测到已经执行过第一次了,那么它后面就不会创建表了。

(1)在该app模块下,有一个migrations文件夹,除了前两个文件外,其他的文件都删除,其实每一次如果有变化的话,这边就会生成一个文件,下面这个001_initial.py看名字就知道是第一次迁移的时候生成的,也就是因为有它的存在,所以以后每次再执行就不再创建表了。

django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决

(2)其次,在数据库里面也有相应的记录,也要删除。我们仔细看看数据库里面存的是什么,在django_migrations里面,这个表里面存的都是每次迁移的记录,当然记录的是什么模块以及对应的文件名字,比如我们这里的模块是dtheme,这里的文件名叫001_initial,和我们文件夹里面是一一对应的,同样,删除这条记录。

django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决

然后再执行python manage.py makemigrationspython manage.py migrate就可以了。

需要注意的是,如果这个app模块下面还有其他的model的话,那么其他model创建的表也要删除掉,相当于我们这样的解决方案是针对整个app模块的,要执行就会全部重新生成,不然会提示部分表已经存在的错误。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python Django批量导入不重复数据
Mar 25 Python
Python+OpenCV采集本地摄像头的视频
Apr 25 Python
django 使用全局搜索功能的实例详解
Jul 18 Python
python re模块匹配贪婪和非贪婪模式详解
Feb 11 Python
Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解
Feb 11 Python
如何将PySpark导入Python的放实现(2种)
Apr 26 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
May 13 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
Aug 07 Python
python 利用zmail库发送邮件
Sep 11 Python
浅析Django接口版本控制
Jun 26 Python
Python实现归一化算法详情
Mar 18 Python
Python 一键获取电脑浏览器的账号密码
May 11 Python
python实战教程之自动扫雷
Jul 13 #Python
详解Python3.6的py文件打包生成exe
Jul 13 #Python
python2 与 python3 实现共存的方法
Jul 12 #Python
Python3单行定义多个变量或赋值方法
Jul 12 #Python
Python读取数据集并消除数据中的空行方法
Jul 12 #Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
Jul 12 #Python
python跳过第一行快速读取文件内容的实例
Jul 12 #Python
You might like
PHP 翻页 实例代码
2009/08/07 PHP
PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
2012/04/09 PHP
制作安全性高的PHP网站的几个实用要点
2014/12/30 PHP
推荐10个提供免费PHP脚本下载的网站
2014/12/31 PHP
Eclipse PHPEclipse 配置的具体步骤
2017/08/08 PHP
Document 对象的常用方法
2009/07/31 Javascript
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
javascript 实现map集合
2015/04/03 Javascript
JS生成不重复的随机数组的简单实例
2016/07/10 Javascript
基于JavaScript实现点击页面任何位置返回
2016/08/31 Javascript
浅谈jquery之on()绑定事件和off()解除绑定事件
2016/10/26 Javascript
jQuery中animate()的使用方法及解决$(”body“).animate({“scrollTop”:top})不被Firefox支持的问题
2017/04/04 jQuery
Node.js自定义实现文件路由功能
2017/09/22 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
react实现点击选中的li高亮的示例代码
2018/05/24 Javascript
mpvue微信小程序多列选择器用法之省份城市选择的实现
2019/03/07 Javascript
Vue实现数据请求拦截
2019/10/23 Javascript
python实现给微信公众号发送消息的方法
2017/06/30 Python
分享一下如何编写高效且优雅的 Python 代码
2017/09/07 Python
python密码错误三次锁定(实例讲解)
2017/11/14 Python
Python中property函数用法实例分析
2018/06/04 Python
python统计字母、空格、数字等字符个数的实例
2018/06/29 Python
python实现文件的分割与合并
2019/08/29 Python
为什么是 Python -m
2020/06/19 Python
python实现数字炸弹游戏程序
2020/07/17 Python
用于ETL的Python数据转换工具详解
2020/07/21 Python
详解python中的闭包
2020/09/07 Python
python中实现栈的三种方法
2020/12/19 Python
美国Lolё官网:购买大胆而美丽的女性运动服装
2017/05/22 全球购物
大学军训通讯稿
2014/01/13 职场文书
五月的鲜花活动方案
2014/08/21 职场文书
公司领导班子民主生活会对照检查材料
2014/10/02 职场文书
浅析InnoDB索引结构
2021/04/05 MySQL
Pytorch 如何实现LSTM时间序列预测
2021/05/17 Python
python 定义函数 返回值只取其中一个的实现
2021/05/21 Python
Python内置包对JSON文件数据进行编码和解码
2022/04/12 Python