django数据迁移命令执行成功,但未在数据库中生成表

2021年6月19日14:01:07 评论 324

产生原因

有以下两种可能:

1.因数据库默认字符集不是utf8,当上传中文字符时报错。

2.处理过程中删除了原数据表,重新迁移,数据库表未能创建

解决步骤

修改数据库中相应表的字符集,上传数据失败。
修改整个数据库的字符集,上传数据失败。
修改mysql配置文件/etc/my.cnf.d/server.cnf,重启数据库,上传数据失败。
django数据迁移命令执行成功,但未在数据库中生成表

django数据迁移命令执行成功,但未在数据库中生成表

因表中无重要数据,故删除相应的表。再重新迁移。此时问题出现。
1、执行python manage.py makemigrations  :未报错,但是已经创建过一次,故没有任何改变

django数据迁移命令执行成功,但未在数据库中生成表

2、执行python manage.py migrate :未报错,但是数据库中未能重新生成表

django数据迁移命令执行成功,但未在数据库中生成表

3、重试几次无果后,以为是数据库下django_migrations表因上一次数据迁移提交已记录,且此次models表未做改变。忽略了此次提交(第15行字段被删除, 第16行是迁移成功后重新创建了表后添加)

django数据迁移命令执行成功,但未在数据库中生成表

4、重新执行python manage.py makemigrations  和  python manage.py migrate。无报错信息。但创建失败。

5、删除post应用下 migrations文件夹。执行python manage.py makemigrations。迁移文件夹migrations 未能重新创建

6、执行python manage.py makemigrations post   指定应用,post/migrations  迁移文件夹生成成功。

7、python manage.py migrate  数据库表创建成功。

8、前端重新测试提交中文数据,数据提交成功

阿成哥
  • 本文由 发表于 2021年6月19日14:01:07
  • 转载请务必保留本文链接:https://blog.acwang.com/755.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: