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

SAP Sybase SQL Anywhere 16.0 (中文) » UltraLite - 数据库管理和参考 » UltraLite 数据库任务和功能

 

隔离级别

隔离级别定义一个事务中的操作对其它并发事务中的操作的可见程度。UltraLite 针对连接使用缺省隔离级别 read_committed。缺省的 UltraLite 隔离级别通过隔离未提交的行保证数据一致性。

此隔离级别…… 具有这些特征……
0—read_uncommitted
  • 允许脏读、非重复性读取和幻像行。

  • 无法确保并发事务将不会修改行或回退对行所做的更改

1—read_committed
  • 允许非可重复读取和幻像行

  • 阻止进行脏读

  • 无法确保查询结果在事务执行过程中不发生更改

可使用下列方式之一将隔离级别从 read_committed 改为 read_uncommitted:

  • 使用 SET OPTION SQL 语句和 isolation_level 数据库选项。

    例如,以下语句将隔离级别设置为读取未提交数据:

    SET OPTION isolation_level = 'READ_UNCOMMITTED'
  • 对于 UltraLite C++ API,使用 ULConnection.SetDatabaseOption 方法更改隔离级别。

    对于 UltraLite.NET API,使用 ULConnection.BeginTransaction 或 ULDatabaseSchema.SetDatabaseOption 方法创建具有 read_committed 隔离级别的事务。

    对于 UltraLiteJ API,使用 Connection.setOption 方法。

    注意

    UltraLite Java 版本数据库仅支持 read_uncommitted 隔离级别。 请参见对 BlackBerry 智能手机的数据同步

 UltraLite Java 版本数据库的并发和锁定
 另请参见

read_uncommitted 隔离级别的特性