多用户访问
Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) 允许与 SQL Server Compact Edition 数据库建立单个或多个连接。
允许通过多个连接访问 SQL Server Compact Edition 数据库为开发人员提供一种简单的开发模式。因为 SQL Server Compact Edition 数据库引擎 能处理来自多个应用程序的同时请求或来自单个应用程序的多个连接请求,所以开发人员不必对数据库访问进行计划。
如果 SQL Server Compact Edition 只允许通过单个连接访问数据库,则必须在一个事务完成之后才能启动另一个事务,这样就限制了并发能力。在 SQL Server Compact Edition 中,您可以同时运行要访问或修改不同数据集的多个应用程序。如果多个应用程序对于数据库中的某个特定资源几乎没有访问冲突,则允许多个应用程序访问数据库就会提高并发能力。
可以通过以下方式访问 SQL Server Compact Edition 数据库:
- 单个连接 — 要求对 SQL Server Compact Edition 数据库进行单个连接的单个应用程序。
- 多个连接 — 单个应用程序可能需要对单个数据库进行多个连接,才能支持各种操作,例如在同步期间访问数据。
注意: 在应用程序要通过复制或远程数据访问 (RDA) 使用多线程访问或修改数据时,应使用相同的 Internet 登录凭据。 - 多个应用程序 — 一个设备上的多个应用程序可以同时访问一个数据库。开发人员不需要管理独占连接。在其他应用程序连接到数据库时,用户可以使用数据库工具(例如 SQL Server Compact Edition 查询分析器)。
如果应用程序要求进行单个连接,且您不希望同时有其他连接或应用程序访问该数据库,您可用独占方式打开该数据库,这样将不允许进行多用户访问。有关独占连接的详细信息,请参阅如何在打开数据库时设置文件模式(以编程方式)和如何在使用 OLE DB 打开数据库时设置文件模式(以编程方式)。
锁定可以用作并发控制机制。虽然可以在任意时刻同时运行多个事务,但锁定可以使所有事务彼此独立运行。有关详细信息,请参阅锁定 (SQL Server Compact Edition)。
对数据库进行同时连接的数量会受到可用资源数量的限制,例如固定大小的会话表会将同时连接数量限制为至多 256 个连接。
重要事项: |
---|
虽然 SQL Server Compact Edition 支持 256 个连接,但我们建议您打开的连接不要超过 100 个。 |
不支持角色或特权。应用程序和用户可以通过使用与在早期版本的 SQL Server Compact Edition 中相同的身份验证和授权步骤来连接到数据库。有关安全步骤的详细信息,请参阅配置和保护服务器环境的安全性。
多用户访问会影响在 SQL Server 和 SQL Server Compact Edition 之间进行同步的数据。有关详细信息,请参阅多用户访问和 RDA 和多用户访问和同步。