如何在 django 中创建丢失的数据库表?
Posted
技术标签:
【中文标题】如何在 django 中创建丢失的数据库表?【英文标题】:How to create missing DB tables in django? 【发布时间】:2016-09-10 21:24:31 【问题描述】:我正在尝试将项目从一台机器转移到另一台机器。这个项目包含一个巨大的日志数据库表。它太庞大了。所以我通过 phpmyadmin 导出和导入了除此之外的所有 db 表。
不,如果我运行 migrate 命令,我希望 django 会创建所有丢失的东西。但事实并非如此。
如何让 django 检查并创建缺失的数据库表?
我错过了什么,为什么不这样做?我觉得旧的同步数据库完成了这项工作。但是新的 --run-syncdb 没有。
感谢您的帮助。
【问题讨论】:
用 python manage.py migrate --list ***.com/questions/29683494/…检查你的数据库状态 您复制了您的项目并需要一个新的分贝? 【参考方案1】:当您导出数据并在该数据包的其他数据库部分重新导入数据时,将包含django_migrations
表。这基本上是 django 成功执行的所有迁移的日志。
由于您只留下了根据您的日志表,那应该是您的架构中唯一缺少的表。在django_migrations
中找到与该表对应的条目并删除它们。然后再次运行./manage.py migrate
,表就创建好了。
【讨论】:
听起来很有道理。非常感谢我明天检查。谢谢。以上是关于如何在 django 中创建丢失的数据库表?的主要内容,如果未能解决你的问题,请参考以下文章
django多数据库迁移:如何防止在每个数据库中创建django默认表