Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » UltraLite - 数据库管理和参考 » UltraLite 简介 » UltraLite 事务和状态管理

 

UltraLite 行状态

维护行状态信息是 UltraLite 功能集的强大部分。对于数据同步来说,跟踪表和行的状态特别重要。

数据更改

内部标记用于跟踪 UltraLite 数据库中的行状态。行状态控制事务处理、恢复和同步。插入、更新或删除行时,该行的状态会被修改,以反映操作和执行操作的连接。提交事务时,会修改该事务影响到的所有行的状态,以反映该提交操作。如果在提交时发生了意外故障,则整个事务将会回退。以下列表总结了这些行为:

  • 发出删除操作时   每个受影响的行的状态均会更改,以反映该行已被删除。恢复行的原始状态以撤消删除。

  • 提交删除操作时   受影响的行并不总是从内存中删除。如果该行从未进行过同步,则该行会被删除。如果该行进行过同步,则该行不会被删除,因为删除操作首先需要与统一数据库同步。在下一次同步之后,该行将从内存中删除。

  • 更新行时   创建该行的新版本。旧行和新行的状态会设置为使旧行不再可见,而新行可见。

  • 提交行更新操作时   提交事务时,会修改该事务影响到的所有行的状态,以反映该提交操作。当同步更新时,旧行和新行均需要用于冲突检测和解决。然后旧行从数据库中删除,新行只是变成正常行。

  • 添加行时   行添加到数据库并标记为未提交。

  • 提交添加行操作时   行标记为已提交,同时也标记为需要与统一数据库同步。

另请参见