我继续阅读SAVE TRANSACTION
,但我不完全确定我理解它。BEGIN
就、COMMIT
和而言,我知道交易的概念ROLLBACK
,但这是一个新概念。听起来几乎就像是为了减小事务日志的大小,或者在一次处理大量数据时不影响服务器的性能。
这是我发现的例子:
“例如,您可以在大型操作期间每隔一段时间创建一个保存点,以便回滚或提交传输在执行时不必处理那么多记录。”
有人可以更好地解释这个吗?Postgres 有类似的SAVEPOINT
命令。
我继续阅读SAVE TRANSACTION
,但我不完全确定我理解它。BEGIN
就、COMMIT
和而言,我知道交易的概念ROLLBACK
,但这是一个新概念。听起来几乎就像是为了减小事务日志的大小,或者在一次处理大量数据时不影响服务器的性能。
这是我发现的例子:
“例如,您可以在大型操作期间每隔一段时间创建一个保存点,以便回滚或提交传输在执行时不必处理那么多记录。”
有人可以更好地解释这个吗?Postgres 有类似的SAVEPOINT
命令。
Save Transaction的使用为您提供了一种回滚事务部分的机制。例如,SP A 启动一个事务,然后调用 SP B。在 SP B 开始时,可以创建保存事务开始处理。
如果随后在 SP B 中发生错误,您可以回滚 SP B 中的更改,从而允许提交 SP A 中的更改。