Redshift是否支持与以下内容等效的任何声明?
DROP TABLE IF EXISTS tablename
答案 0 :(得分:23)
最新版本的Redshift支持此功能:
DROP TABLE [ IF EXISTS ] name [, ...] [ CASCADE | RESTRICT ]
IF EXISTS表示如果指定的表没有的条款 存在,该命令应该不做任何更改并返回一条消息 该表不存在,而不是以错误终止。
此脚本在编写脚本时很有用,因此脚本不会失败 DROP TABLE针对不存在的表运行。
答案 1 :(得分:15)
见下一个答案;这是过时。
支持
DROP TABLE IF EXISTS tablename;
在PostgreSQL 8.2中添加了。 RedSpift是ParAccel对8.1的一个非常大修改的分支,据我所知他们已经从较新的版本向后移植了很少的变化。它不太可能支持IF EXISTS
;你可能需要做一个目录查询,通过查找information_schema
确定表是否存在,然后根据结果决定是否创建它。