我使用基于浏览器的客户端JackDB连接到AWS Redshift。
并尝试运行真空
VACUUM table_name;
当然会收到以下错误
ERROR: VACUUM cannot run inside a transaction block
如何在SQL会话中设置自动提交,Redshift中是否存在类似
的内容set autocommit=on;
VACUUM table_name;
set autocommit=off;
P.S。
Redshift文档中推荐的官方客户端是SQL Workbench / J.它具有“autocommit”功能,可确保成功运行VACUUM命令。
但是JackDB更方便,更便携
答案 0 :(得分:0)
怎么样
END;
VACUUM table_name;
BEGIN;
答案 1 :(得分:0)
END; set autocommit = on; VACUUM table_name;承诺; set autocommit = off;
答案 2 :(得分:0)
对我有用的是仅在连接管理器中选中“自动提交”复选框。