交易在整个生命周期中进行的州。这些状态可以告知交易的当前状态,还可以告诉我们我们将如何进一步处理交易。这些状态控制着决定交易命运的规则,无论该交易是提交还是中止。
这些是不同类型的事务状态:
- 活动状态–
当事务指令正在运行时,事务处于活动状态。如果所有的“读和写”操作均正确执行,则进入“部分提交状态”。如果任何指令失败,它将进入“失败状态”。 - 部分承诺–
完成所有读取和写入操作后,将在主存储器或本地缓冲区中进行更改。如果将更改永久保留在数据库上,则状态将更改为“已提交状态”,如果发生故障,它将进入“失败状态”。 - 失败状态–
当事务的任何指令失败时,它将进入“失败状态”,或者在对数据库中的数据进行永久更改时发生失败。 - 中止状态–
在发生任何类型的故障后,事务将从“失败状态”变为“异常终止状态”,并且由于在以前的状态中,仅对本地缓冲区或主存储器进行更改,因此这些更改被删除或回滚。 - 承诺国–
在这种状态下,更改将在数据库上永久生效,并且事务已完成,因此终止于“终止状态”。 - 终止国–
如果没有任何回滚或事务来自“已提交状态”,则系统是一致的,可以进行新事务,而旧事务将终止。