我正在尝试使用Java模拟数据库恢复子系统。但是,我有以下问题。

每当发出开始交易时,是否总是有必要进行结束交易? (如下面的示例)

b1    --- Begin txn 1
r1(X) --- Read item X using txn 1
e1    --- End txn 1


按照上面的示例,我没有发布Commit事务语句。那么,我的交易成功还是失败?如果上面的示例如下所示,

b1    --- Begin txn 1
r1(X) --- Read item X using txn 1
c1    --- commit txn 1


end和commit有什么区别?

如果您需要更多信息,请告诉我。

最佳答案

您可以回滚事务或提交事务。我希望您不要将它与不是事务的BEGIN和END块混淆,并且与事务完全无关。

我相信在大多数数据库中……仍然以ROLL BACK或COMMIT结尾。

希望这可以帮助。

07-24 21:10