微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

postgresql – Postgres:删除所有表或级联删除?

是否可以使用postgres中的单个命令删除所有表中的所有行(不破坏@R_502_6274@),或者在postgres中级联删除

如果没有,那么如何重置我的测试@R_502_6274@?

解决方法

is it possible either to delete all rows from all tables with a single command in postgres

你是对的,答案是肯定的

您可以定义级联外键,如果删除“父级”,将删除所有引用行.但这是外键的属性,您无法使用DELETE语句指定任何内容

if not – wow.

那是什么意思?

第二个想法:你想要实现什么?

我怀疑你是在试图“重置”,例如一个测试@R_502_6274@.在这种情况下,Postgresql方法将是:

>创建一个@R_502_6274@,其中包含新@R_502_6274@中所需的所有内容(表,视图,索引等)(称为my_template)
>要重置当前的test-DB,请执行DROP DATABASE testdb,然后使用CREATE DATABASE testdb重新创建测试@R_502_6274@TEMPLATE my_template

新创建的testdb将在my_template中定义所有表.这可能比删除所有行快得多.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐