Django 做 migrate 时,当你的表已存在的处理方法

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

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

django.db.utils.OperationalError: (1050, "Table 'xxx' already exists")
AI 代码解读

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

python manage.py migrate --fake-initial

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

python manage.py migrate --fake <appname>
AI 代码解读

参考资料:https://stackoverflow.com/questions/25924858/django-1-7-migrate-gets-error-table-already-exists

目录
打赏
0
0
0
0
302
分享
相关文章
Django的Migrate和Makemigrations讲解
Django的Migrate和Makemigrations讲解
640 0
Django的Migrate和Makemigrations讲解
django migrate 报错(You have an error in your SQL syntax)
问题 django migrate 报错 在本地执行的时候发现没问题,到了服务器就不行了,报错 Operations to perform: Apply all migrations: bank_detections Running migrations: Traceback (most r.
当用DJANGO的migrate不成功时。。。。
URL:http://my.oschina.net/u/862582/blog/355421   因为操作SQL数据库时不规范,或是多人开发时产生了同步问题,就可能导致正规的MIGRATE时不能完成。
1206 0
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
269 45
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第26天】本文详细介绍了如何在Django框架下进行全栈开发,包括环境安装与配置、创建项目和应用、定义模型类、运行数据库迁移、创建视图和URL映射、编写模板以及启动开发服务器等步骤,并通过示例代码展示了具体实现过程。
112 2
Python Web框架比较:Django vs Flask vs Pyramid
Python Web框架比较:Django vs Flask vs Pyramid
72 1
Python Web框架比较:Django vs Flask vs Pyramid
Python Web框架比较:Django vs Flask vs Pyramid
74 4
Python编程--Django入门:用户账户(一)
Python编程--Django入门:用户账户(一)
56 1