【发布时间】:2018-08-08 06:08:39
【问题描述】:
在 postgres 中,当我尝试删除临时表时,如何避免意外删除静态表。 如果临时表 foo 不存在,则下面的查询将删除默认架构上的表 foo。
DROP TABLE IF EXISTS foo;
CREATE TEMP TABLE foo AS
【问题讨论】:
-
为所有临时表添加前缀
temp。命名约定将确保您正在处理要影响的表类。 -
SET search_path to ''; -
你在玩一个危险的游戏!考虑在临时表上设置前缀以避免这种混淆
-
@GordonLinoff 除非有人会用这个前缀创建静态表。不幸的是,命名约定是不够的,我需要更精确的东西。
标签: sql postgresql temp-tables