psycopg2:如何在 python 脚本中执行 vacuum postgresql 查询

psycopg2: How to execute vacuum postgresql query in python script

我正在将 Python 与 psycopg2 一起使用,我正在尝试 运行 在 python 脚本中进行完整的 VACUUM。问题是,当我尝试 运行 我的代码中的 VACUUM 命令时,出现以下错误:

psycopg2.InternalError: VACUUM 不能 运行 在事务块内

试图执行的行是:

sql="vacuum full table_name;"

cur.execute(sql)

如何解决这个错误?

Psycopg2 为每次调用 .execute() 启动一个新事务。

打开一个自动提交连接来处理真空。

http://initd.org/psycopg/docs/connection.html#connection.autocommit