Django 1.8 如何使用 manage.py 删除某些表?

Django 1.8 How Drop certain tables using manage.py?

我在使用 manage.py 删除数据库的某些表时遇到了非常糟糕的时间,该项目已经 运行。

我发现的唯一方法是通过以下方式访问表格:

python manage.py dbshell

但同样,不确定如何删除表格。

Django 的 dbshell 将您带入已配置数据库的命令行客户端。一些命令将特定于数据库,但删除 tables 在主要数据库中非常一致。

进入后您应该能够

DROP TABLE foo;

删除 foo table。您可能需要按特定顺序删除 table,因为它们可能相互依赖,例如通过外键。

(或者,您可以使用 CASCADE 参数删除依赖的 table,但如果您不是 非常 小心,这可能 真的毁了你的夜晚。在我看来,最好慢慢地、有意识地去,一次丢掉一个table。)

当然,在做这种事情之前一定要备份你的数据库!