码迷,mamicode.com
首页 > 其他好文 > 详细

django 做 migrate 时 表已存在的处理

时间:2019-12-12 01:14:20      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:name   存在   strong   使用   数据表   数据库   错误   情况   顺序   

在开发web的时候,如果是以前已存在的项目,项目下载下来后,为了使用测试库的数据,会直接将整个测试库(如sqlite3)拿到本机来。这种情况下,如果执行的顺序不对,很容易在执行migrate的时候出现数据库已存在的错误: 

django.db.utils.OperationalError: (1050, "Table ‘xxx‘ already exists")

要处理这种情况,如果是数据表都已经存在了,在migrate时直接使用 --fake-initial 来处理

python manage.py migrate --fake-initial
 如果是因有外键存在,需要初始化多个表,且有部分数据表已创建,又有部分未创建,可以使用 --fake <appname>来处理

python manage.py migrate --fake <appname>

django 做 migrate 时 表已存在的处理

标签:name   存在   strong   使用   数据表   数据库   错误   情况   顺序   

原文地址:https://www.cnblogs.com/zmdComeOn/p/12026624.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!