Многопользовательский доступ
Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) поддерживает как отдельные, так и множественные подключения к базе данных SQL Server Compact Edition.
Разрешение нескольких подключений к базе данных SQL Server Compact Edition предлагает разработчикам простую модель разработки. Поскольку SQL Server Compact Edition Database Engine может одновременно обрабатывать запросы от нескольких приложений или несколько запросов от одного приложения, разработчикам не приходится планировать доступ к базе данных.
Если в SQL Server Compact Edition разрешено лишь одно подключение к базе данных, для запуска новой транзакции потребуется дожидаться окончания предыдущей, что ограничивает параллелизм. В SQL Server Compact Edition можно одновременно запускать несколько приложений, открывающих или изменяющих различные наборы данных. Если по конкретному ресурсу базы данных практически не возникает конфликтов данных между приложениями, разрешение нескольким приложениям получать одновременный доступ к базе данных улучшает параллелизм.
Доступ к базам данных SQL Server Compact Edition выполняется двумя способами.
- Отдельное подключение — одно приложение требует одного подключения к базе данных SQL Server Compact Edition.
- Несколько подключений — одному приложению может потребоваться несколько подключений к одной базе данных для поддержки различных операций, например доступа к данным во время синхронизации.
Примечание. Когда приложение использует несколько потоков для открытия или изменения данных посредством репликации или удаленного доступа к данным, необходимо использовать те же самые учетные данные Интернета. - Несколько приложений — несколько приложений на устройстве могут одновременно получать доступ к базе данных. От разработчика не требуется управлять монопольными подключениями. Пользователи могут работать со средствами базы данных, например с SQL Server Compact Edition Query Analyzer, пока другое приложение подключено к базе данных.
Если приложению необходимо отдельное подключение, другие подключения или приложения не должны при этом одновременно получать доступ к базе данных. Базу данных можно открыть монопольно, запретив тем самым многопользовательский доступ. Дополнительные сведения о монопольных подключениях см. в разделах Как задать файловый режим при открытии базы данных (программным путем) и Как задать файловый режим при открытии базы данных с помощью OLE DB (программным путем).
Блокировка используется как механизм управления параллелизмом. Блокировка позволяет запускать все транзакции в полной изоляции друг от друга, что позволяет выполнять одновременно несколько транзакций. Дополнительные сведения см. в разделе Блокировка (SQL Server Compact Edition).
Количество одновременных подключений к базе данных ограничено числом доступных ресурсов, например таблицей сеансов фиксированного размера, которая ограничивает число одновременных подключений 256.
Важно! |
---|
Хотя SQL Server Compact Edition поддерживает 256 подключений, рекомендуется открывать не более 100 подключений. |
Роли и привилегии не поддерживаются. Приложения и пользователи могут подключаться к базе данных, используя те же процедуры проверки подлинности и авторизации, что и в ранних версиях SQL Server Compact Edition. Дополнительных сведения о процедурах безопасности см. в разделе Настройка и обеспечение безопасности серверной среды.
Многопользовательский доступ может повлиять на данные, синхронизируемые между SQL Server и SQL Server Compact Edition. Дополнительные сведения см. в разделах Многопользовательский доступ и удаленный доступ к данным и Многопользовательский доступ и синхронизация.