我知道删除多个表的语法是:
DROP TABLE foo, bar, baz;
但在我的例子中,3 个表在它们之间有外键,并且与其他表不被删除。
- 表 1:来自表 2、表 3 和数据库中另外 3 个表的外键。
- 表 2:来自表 3 的外键,数据库中还有 2 个表。
- 表 3:来自数据库中另外 3 个表的外键。
那么我怎样才能删除这 3 个表呢?他们在表中有数据。上面的语法会忽略外键吗?数据库中其他表不能有数据不一致。
最佳答案
您可以使用 cascade
关键字告诉 Postgres 自动删除引用这些表的所有外键:
DROP TABLE foo, bar, baz CASCADE;
关于sql - 如何在 PostgreSQL 中删除具有外键的多个表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15403455/