django 上传中文文件报错_django.db.utils.ProgrammingError: 1146 解决方法

本文详细介绍了在Django项目中遇到的数据库迁移错误`django.db.utils.ProgrammingError: 1146`的问题复现及解决步骤。通过删除migrations文件、清理数据库记录并重新迁移,成功解决了表不存在的错误,使项目恢复正常运行。
摘要由CSDN通过智能技术生成

一、问题复现

运行 Django 项目的时候报错:django.db.utils.ProgrammingError: (1146, "Table 'tmsdata.sysMgr_syslog' doesn't exist")。

翻译一下就是表不存在的意思,其实就是数据库迁移出了问题,需要重新迁移一下。

二、解决方法

先找到报错数据表对应的 migrations 文件夹,保留 __pycache____init__.py 文件,其他的都删掉。

c52a35ba436acfe3276b7f545f81649e.png

然后其他 migrations 文件夹,进行上述一样的操作。(把之前进行数据库迁移生成的文件记录全给删掉)

再去数据库里面,把报错对应的记录也删除,如下图:

5829b47b05989dd9667413c405679652.png

最后,进行数据库迁移操作。我是用的 Pycharm 自带的这个:

fa63f5702825216f2fc68441d19c2a48.png

然后先执行下面这行命令:

makemigrations

b01e17ad1cd6fcdbfa8869b3a3264b21.png

再执行下面这行命令:

migrate

cca0c40e5d8ed48f96d23096b99fa1c8.png

此时就表示数据库迁移成功,再运行项目,发现成功运行:

d3fda151ff98ae84870b4a2459472ea0.png

三、参考

django.db.utils.ProgrammingError: 1146 解决办法​www.cnblogs.com
7f1f11bb1e4f64affa41da5c893a408f.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值