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 使用以下方法管理并发性:

  • 多个数据库   单个 UltraLite 应用程序可以打开到多个数据库的连接。UltraLite 可以在 Palm OS 上打开多至 8 个数据库,对于其它所有平台,可以打开多至 32 个数据库。

  • 多个应用程序   一次仅可以由一个进程打开 UltraLite 数据库。如果打算在多个应用程序间支持并发,则选择 UltraLite 引擎作为数据管理组件。请参见选择 UltraLite 数据管理组件

  • 多线程   UltraLite 支持多线程应用程序。可以编写一个使用多线程的应用程序,它的每个线程都可以连接到相同的或不同的数据库。

    如果要使用运行库管理您的数据库,请确保没有超过 UltraLite 所支持的并发连接限制。这些限制为:

    • Palm OS 支持 16 个并发连接。

    • 其它所有平台支持 64 个并发连接。

    如果使用 UltraLite 引擎管理数据库连接,则可使用的 SQLCA 数目通常限制为 128。但是,UltraLite.NET API 的实现将此限制明显减少到正在运行的 UltraLite.NET 客户端数目减去 128。

  • 多个事务/请求    每个连接在同一时刻可以有一个进行中的事务。事务可以由一个请求或多个请求组成。在提交事务之前,该事务期间所作的数据修改在数据库中不会成为永久性的。某个事务中所作的数据修改或者全部提交,或者全部回退。请参见UltraLite 事务处理

  • 同步   在上载和下载期间,允许对数据库进行读写访问。但是,如果应用程序更改了一行,而随后下载也尝试更改此行,则下载失败并回退。使用 Disable Concurrency 同步参数禁用同步期间的数据访问。请参见Additional Parameters 同步参数

    如果同步失败,UltraLite 在所有平台上支持断点续传下载。请参见处理失败的下载

另请参见