【发布时间】:2019-12-15 03:34:11
【问题描述】:
如果表存在于 cockroachdb 中,如何截断表? 我想删除 cockroachdb 表中的所有记录。 该表可能存在也可能不存在。 只有在 cockroachdb 中存在表时,我才能截断表。
我可以看到mysql中使用了IF exists。但是我在cockroach db中找不到类似的语法。
truncate table IF exists table1;
ERROR: syntax error at or near "exists"
DETAIL: source SQL:
truncate table IF exists table1;
【问题讨论】:
-
似乎不支持(但已经有请求)github.com/cockroachdb/cockroach/issues/37798 所以它可能必须通过单独的脚本检查是否存在并返回 0/1 来完成。然后,此返回确定是否调用了截断脚本。
-
您的语法不正确。见这里cockroachlabs.com/docs/stable/truncate.html。另一种方法是 DROP TABLE IF EXISTS 然后再次创建它。
-
您也可以截断表格并在错误不存在时忽略错误(如果您不想删除它)..
-
感谢 @SAS 和 ankit Bajpal 的宝贵意见。
标签: sql cockroachdb