pymysql.err.InternalError: (1054, "Unknown column 'create_time' in 'tb_oauth_qq'") 错误解决方案和思路

当执行Django的迁移命令时遇到pymysql.err.InternalError: (1054, "Unknown column 'create_time' in 'tb_oauth_qq'")错误。问题源于ORM生成的迁移文件与实际数据库字段不符。解决方案是手动修改MySQL表中的字段名以匹配ORM,确保数据一致性,从而成功完成迁移。" 122753819,11809148,Android Hook技术:无清单启动Activity与Webview融合,"['移动开发', 'Android', 'Hook技术']
摘要由CSDN通过智能技术生成

刚开始报这个错误,我也是一脸懵逼;不知道如何解决,网上也搜了很多案列,但是都没有能解决问题.
现给出解决思路和答案:
问题:
可以正常生成迁移,也是就能正常执行python manage.py makemigrations命令,
但是执行迁移命令(python manage.py migrate )是却报错了
pymysql.err.InternalError: (1054, “Unknown column ‘create_time’ in ‘tb_oauth_qq’”)

解决方案:

然后我就开始分析ORM和数据之间的关系
在这里插入图片描述
可能是之前乱迁移的缘故,
所以ORM给我生成的迁移文件中默认了我的mysql表中现有字段是create_time,要迁移成create,
但是其实我表中的真实字段为:create,并不是create_time,所以在迁移文件执行迁移命令的时候找不到create_time,所以他就报错了.=======>pymysql.err.InternalError: (1054, “Unknown column ‘create_time’ in ‘tb_oauth_qq’”)
这个可能是mysql跟Django中ORM没有完全兼容的结果吧

那么既然问题是数据不一致造成了,那就想办法把数据弄成一致的不就行了
so
在这里插入图片描述
在这里插入图片描述

然后我就手动吧mysql里面的中的字段改成跟Django中ORM默认的迁移文件字段一致
然后
就顺利的迁移成功了.
所以根据这次的经验得出
如果只要报类似的错误,
肯定就是ORM跟数据库之间的
交互
出现了问题.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值