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使用cookielib库示例分享
Mar 03 Python
python实现图片批量剪切示例
Mar 25 Python
python爬虫常用的模块分析
Aug 29 Python
Python实现将Excel转换为json的方法示例
Aug 05 Python
python分析作业提交情况
Nov 22 Python
django 发送邮件和缓存的实现代码
Jul 18 Python
python批量赋值操作实例
Oct 22 Python
django搭建项目配置环境和创建表过程详解
Jul 22 Python
Python 读取用户指令和格式化打印实现解析
Sep 02 Python
Pytorch释放显存占用方式
Jan 13 Python
django 将自带的数据库sqlite3改成mysql实例
Jul 09 Python
python 爬取B站原视频的实例代码
Sep 09 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
《猛禽小队》:DC宇宙的又一超级大烂片
2020/04/09 欧美动漫
PHP获得用户使用的代理服务器ip即真实ip
2006/12/31 PHP
解析Win7 XAMPP apache无法启动的问题
2013/06/26 PHP
如何用PHP来实现一个动态Web服务器
2015/07/29 PHP
php变量与字符串的增删改查操作示例
2020/05/07 PHP
javascript整除实现代码
2010/11/23 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
JS去掉第一个字符和最后一个字符的实现代码
2014/02/20 Javascript
基于jquery animate操作css样式属性小结
2015/11/27 Javascript
jQuery计算文本框字数及限制文本框字数的方法
2016/03/01 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
AngularJS通过ng-route实现基本的路由功能实例详解
2016/12/13 Javascript
React组件refs的使用详解
2018/02/09 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
JavaScript常见事件对象与操作实例总结
2019/01/05 Javascript
如何使用VuePress搭建一个类型element ui文档
2019/02/14 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
2019/09/18 Javascript
vue+vant实现商品列表批量倒计时功能
2020/01/13 Javascript
JS深入学习之数组对象排序操作示例
2020/05/01 Javascript
[44:09]DOTA2上海特级锦标赛A组小组赛#1 EHOME VS MVP.Phx第二局
2016/02/25 DOTA
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
简单理解Python中基于生成器的状态机
2015/04/13 Python
Python3学习笔记之列表方法示例详解
2017/10/06 Python
Python实现邮件的批量发送的示例代码
2018/01/23 Python
Django中Model的使用方法教程
2018/03/07 Python
使用python实现快速搭建简易的FTP服务器
2018/09/12 Python
通过python将大量文件按修改时间分类的方法
2018/10/17 Python
python实现给微信指定好友定时发送消息
2019/04/29 Python
谈一谈基于python的面向对象编程基础
2019/05/21 Python
python 并发编程 阻塞IO模型原理解析
2019/08/20 Python
新奥尔良珠宝:Mignon Faget
2020/11/23 全球购物
人事局接收函
2015/01/30 职场文书
郭明义观后感
2015/06/08 职场文书
python异常中else的实例用法
2021/06/15 Python