Postgres设置本地开始/提交

时间:2009-07-27 01:52:22

标签: postgresql commit

设置本地状态的文档:

“请注意,如果在BEGIN块之外执行SET LOCAL将无效,因为事务将立即结束。”

如果我在只读事务的上下文中使用SET LOCAL,我是否需要用COMMIT语句指示事务的结束?如果我这样做是否有任何区别?

1 个答案:

答案 0 :(得分:3)

如果您的连接在没有COMMIT的情况下关闭,PostgreSQL将自动发出ROLLBACK。在只读事务的上下文中,这没有任何后果。

如果您的交易在您的交易后保持打开状态,您可能需要发出ROLLBACK(或COMMIT,但通常ROLLBACK费用较低),以便您进行下一笔交易在干净的状态下执行。