清除postgresql和alembic并从头开始

时间:2015-07-13 19:56:22

标签: python git postgresql sqlalchemy alembic

我通过搜索发现的所有内容在某种程度上都是错误的或不完整的。那么,我该怎么做:

  • 删除postgresql数据库中的所有内容
  • 删除我所有的alembic修订
  • 使我的数据库100%像新的一样

3 个答案:

答案 0 :(得分:3)

这对我有用:

1)以session.create_all的方式访问会话,执行session.drop_all。

2)删除alembic生成的迁移文件。

3)再次运行session.create_all和初始迁移生成。

答案 1 :(得分:1)

不知道如何搞乱alembic,但对于数据库,您只需登录SQL控制台并使用DROP DATABASE foo

或者您想要清除所有数据,但将表格保留在那里?如果是这样,Truncating all tables in a postgres database有一些好的答案。

答案 2 :(得分:0)

如果您想在不删除迁移文件的情况下执行此操作,步骤如下:

  1. 删除数据库中所有要重新创建的表。
  2. 截断 alembic_version 表(这样它会从头开始) - 这是保留最新版本的位置。

你可以运行的:

alembic upgrade head

一切都将被重新创建。当我的迁移在开发过程中处于一种奇怪的状态并且我想重置 alembic 时,我遇到了这个问题。这奏效了。