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

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

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

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

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

python manage.py migrate --fake-initial

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

python manage.py migrate --fake <appname>

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

相关文章
|
SQL 安全 Java
Django的Migrate和Makemigrations讲解
Django的Migrate和Makemigrations讲解
479 0
Django的Migrate和Makemigrations讲解
|
SQL 关系型数据库 MySQL
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.
|
Shell 数据安全/隐私保护 Python
|
SQL 数据库 Python
当用DJANGO的migrate不成功时。。。。
URL:http://my.oschina.net/u/862582/blog/355421   因为操作SQL数据库时不规范,或是多人开发时产生了同步问题,就可能导致正规的MIGRATE时不能完成。
1180 0
|
4天前
|
安全 数据库 C++
Python Web框架比较:Django vs Flask vs Pyramid
【4月更文挑战第9天】本文对比了Python三大Web框架Django、Flask和Pyramid。Django功能全面,适合快速开发,但学习曲线较陡;Flask轻量灵活,易于入门,但默认配置简单,需自行添加功能;Pyramid兼顾灵活性和可扩展性,适合不同规模项目,但社区及资源相对较少。选择框架应考虑项目需求和开发者偏好。
|
4天前
|
前端开发 UED Python
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
|
4天前
|
中间件 Python
中间件应用Django Middleware(Python)
【5月更文挑战第3天】中间件应用Django Middleware(Python)
37 6
中间件应用Django Middleware(Python)
|
4天前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之阿里函数计算中在自定义环境下用debian10运行django,用官方层的python3.9,配置好环境变量后发现自定义层的django找不到了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
23 3
|
4天前
|
存储 搜索推荐 开发者
django-haystack,具有全文搜索功能的 Python 库!
django-haystack,具有全文搜索功能的 Python 库!
25 0