Функции (SQL Server Compact)
SQL Server Compact 3.5 — это компактная база данных, которая может быть развернута на интеллектуальных устройствах и компьютерах. SQL Server Compact 3.5 развертывается на смарт-устройствах либо путем копирования CAB-файлов и установки вручную, либо через Microsoft Visual Studio 2008 с пакетом обновления 1 (SP1). SQL Server Compact 3.5 развертывается на компьютере с помощью установщика для настольного компьютера (SSCERuntime-RUS.msi) или через Microsoft Visual Studio 2010.
Поддержку разработки SQL Server Compact 3.5 осуществляет среда Visual Studio 2008 с пакетом обновления 1 (SP1) для приложений для интеллектуальных устройств и Visual Studio 2010 для настольных приложений. Поддержка администрирования баз данных обеспечивается Microsoft SQL Server 2008 R2. Доступ к базам данных SQL Server Compact 3.5 на интеллектуальном устройстве или настольном компьютере возможен в среде SQL Server Management Studio в SQL Server или в среде SQL Server Management Studio Express (SSMSE). Пользовательский интерфейс SSMSE является подмножеством среды SQL Server Management Studio. Среду SSMSE можно бесплатно загрузить с веб-сайта Майкрософт.
Примечание
Для разработки приложений для настольных компьютеров предпочтительной средой является Visual Studio 2010. Для разработки приложений для интеллектуальных устройств предпочтительной средой является Visual Studio 2008 с пакетом обновления 1 (SP1). Visual Studio 2010 не обеспечивает поддержку разработки приложений для интеллектуальных устройств. Дополнительные сведения см. в разделе Установка среды разработки.
SQL Server Compact 3.5 имеет следующие отличительные возможности.
Синхронизация
В области репликации и синхронизации данных с помощью SQL Server Compact 3.5 добавлен ряд следующих улучшений.
Поддержка нескольких подписок
В прежних версиях SQL Server Compact 3.5 (версия 2.0 и ранее) для каждой базы данных можно было создать только одну подписку. В среде, где опубликованные данные порождаются из нескольких подписок, разработчику приходилось для каждой публикации создавать отдельную базу данных подписки. После этого необходимо было указать, с какой базой данных работает приложение. В SQL Server Compact 3.5 одна база данных может содержать несколько подписок, что сокращает объем кодирования. Дополнительные сведения о нескольких подписках см. в разделе Поддержка нескольких подписок.
Многопользовательская поддержка и синхронизация
Для поддержки нескольких приложений, осуществляющих одновременный доступ к базе данных, SQL Server Compact 3.5 обеспечивает многопользовательскую поддержку. Она позволяет нескольким пользователям базы данных синхронизировать данные без необходимости отключаться от базы перед началом репликации слиянием и удаленного доступа к данным (RDA). Дополнительные сведения о многопользовательской синхронизации см. в разделах Многопользовательский доступ и удаленный доступ к данным и Многопользовательский доступ и синхронизация.
Состояние выполнения синхронизации
Для возврата сведений о ходе выполнения синхронизации разработчики могут пользоваться управляемыми программными API-интерфейсами. Это позволит информировать пользователей о выполнении синхронизации. Дополнительные сведения о строке состояния см. в разделе Асинхронная синхронизация данных.
Отслеживание на уровне столбцов
В предыдущих версиях SQL Server Compact 3.5 синхронизация выполнялась MicrosoftSQL Server для всей строки, даже если был изменен всего один столбец. Это часто увеличивало время синхронизации, если неизмененные столбцы в строке содержали большой объем данных. SQL Server Compact 3.5 с пакетом обновления 1 (SP1) и более поздние версии производят синхронизацию только измененных столбцов. Дополнительные сведения об отслеживании на уровне столбцов см. в разделе Использование отслеживания на уровне строк и на уровне столбцов.
Подсистема хранилища
Новые и усовершенствованные функции подсистемы хранилища SQL Server Compact 3.5 повышают надежность и производительность мобильных приложений. К таким средствам относятся следующие.
Переработанная подсистема хранилища
Архитектура подсистемы хранилища была переработана в целях оптимизации в мобильных архитектурах, где каждое приложение пользуется одним и тем же пулом памяти. Высокая надежность данных обеспечивается теперь за счет полноценной поддержки атомарности, согласованности, изоляции и продолжительности (ACID), а также при возникновении проблем с питанием от аккумуляторов и разрывов связи. Дополнительные сведения см. в разделе Обзор компонента Database Engine (SQL Server Compact).
Многопользовательская поддержка
Для поддержки нескольких приложений, одновременно обращающихся к базе данных, SQL Server Compact 3.5 реализует блокировку страниц данных, как для всей страницы, так и на уровне строк, а также уровни изоляции, позволяющие гарантировать целостность данных при многозадачности. Дополнительные сведения о блокировке см. в разделах Блокировки (SQL Server Compact) и Распространение блокировок.
Автоматическое повторное использование пустых страниц
В SQL Server Compact 3.5 поддерживается автоматическое сжатие. Это означает, что пустые страницы данных буду использованы повторно, что позволит сэкономить место в хранилище устройства. Дополнительные сведения об автоматическом сжатии см. в разделе Обслуживание баз данных (SQL Server Compact).
Обработчик запросов
В обработчике запросов SQL Server Compact 3.5 реализованы следующие улучшения.
Оптимизация на основе стоимости
Обработчик запросов на основе функций поддержки статистики в подсистеме хранилища способен создавать куда более экономичные планы запросов. Дополнительные сведения о статистике см. в разделе Обзор компонента Database Engine (SQL Server Compact).
План выполнения и подсказки в запросах
Во время работы с SQL Server Compact 3.5 разработчики имеют возможность просмотреть план запроса и на основе полученных сведений улучшить его формулировку, например с учетом конструкции базы данных, времени доступа к носителям или скорости ЦП для конкретных поддерживаемых устройств.
Новый объект SqlCeResultSet
Новый объект SqlCeResultSet предоставляет собой обновляемый прокручиваемый курсор, который позволяет разработчику напрямую обращаться к базе данных SQL Server Compact 3.5, избавляя их от необходимости двойной буферизации данных на устройстве в объекте DataSet. По сравнению с объектом DataSet этот класс значительно повышает производительность и сокращает объем кода, необходимого для выполнения такого рода задач. Кроме того, он поддерживает интерфейсы привязки данных WinForms и может быть привязан к таким элементам пользовательского интерфейса, как DataGrid, TextBox и ListBox. Дополнительные сведения о курсорах см. в разделе Курсоры (SQL Server Compact) и в пространстве имен System.Data.SqlServerCe.
Интеграция с SQL Server
Управление базой данных SQL Server Compact 3.5 может производиться как на настольном компьютере, так и на устройстве при помощи среды SQL Server Management Studio, средства управления SQL Server, заменяющего программу Query Analyzer в SQL Server Enterprise Manager и SQL Server. Это встроенное средство обеспечивает для пользователей одинаковую функциональность при соединении с SQL Server и SQL Server Compact 3.5. Управление SQL Server Compact 3.5 может также производиться в среде SQL Server Management Studio Express.
Использование среды Management Studio обеспечивает следующие преимущества.
Графические планы выполнения запросов
Позволяют разработчикам возможность просмотреть план выполнения запроса и повышают качество оценки потенциальных проблем производительности. Отдельная функция, подсказки в запросах, позволяет управлять некоторыми аспектами плана выполнения.
Мастер создания подписок
Мастер создания подписок требует от пользователей минимума усилий при создании и последующей синхронизации базы данных подписки. Дополнительные сведения см. в разделе Мастер создания подписок.
Усовершенствованный мастер настройки веб-синхронизации
SQL Server Compact 3.5 поддерживает улучшенные версии мастера настройки веб-синхронизации, в которых доработан интерфейс и добавлена поддержка виртуальных каталогов HTTPS. Дополнительные сведения см. в разделе Справка мастера настройки веб-синхронизации.
Интеграция с конструктором служб SSIS
Службы SSIS позволяют разработчикам передавать данные между базой данных SQL Server Compact 3.5 и разнообразными источниками данных: базами данных Microsoft Access, Oracle, IBM. Службы SSIS включают адаптер загрузки данных и диспетчер соединения для SQL Server Compact 3.5.
Редактор SQL
Компонент «Редактор SQL» в среде Management Studio — это основное средство интерактивной разработки и тестирования инструкций, запросов и сценариев на языке Transact-SQL. Редактор SQL реализует ряд функций, упрощающих написание и изменение запросов и кода. Поддерживается и изменение сценариев, созданных из файлов или в обозревателе объектов.
Развертывание баз данных
Среды Management Studio и Management Studio Express позволяют создавать базы данных SQL Server Compact 3.5 на локальном компьютере. Их можно настроить, заполнить данными и развернуть на нескольких устройствах. Это позволит значительно сократить время разработки и развертывания.
Ряд усовершенствований, реализованных в SQL Server для репликации слиянием, предоставляют для приложений SQL Server Compact 3.5 следующие преимущества.
Доступ к API-интерфейсам для синхронизации бизнес-логики
SQL Server предоставляет доступ к API-интерфейсу, позволяющему пользователям изменить данные бизнес-логики перед их сохранением в базе данных SQL Server. Дополнительные сведения см. в разделе «Выполнение бизнес-логики во время синхронизации слиянием» электронной документации по SQL Server 2008 R2.
Поддержка статей (таблиц) только для загрузки
Эта функция снижает объем метаданных, передаваемых в процессе начальной синхронизации, и сокращает время обработки SQL Server при выполнении последующей синхронизации. Дополнительные сведения см. в разделах Общие сведения о репликации слиянием и Создание публикации.
Поддержка секционированных (фильтрованных) статей
Многие мобильные приложения производят фильтрацию данных таким образом, чтобы пользователи разных устройств не имели доступа к одним и тем же данным. Поддержка секционированных статей позволяет разработчикам значительно сократить время синхронизации и повысить масштабируемость приложений. Эта функция особенно полезна при развертывании на нескольких мобильных устройствах. Дополнительные сведения о секционированных статьях см. в разделе Создание публикации.
Интеграция со средой Visual Studio
Были произведены улучшения в области интеграции SQL Server Compact 3.5 со средой Visual Studio.
Управление базами данных
Разработчик может производить управление базой данных SQL Server Compact 3.5 как на настольном компьютере в среде Visual Studio 2010, так и на любом поддерживаемом устройстве в среде Visual Studio 2008 с пакетом обновления 1 (SP1). Чтобы выполнить автоматическую привязку таблицы SQL Server Compact 3.5, достаточно просто перетащить ее на элемент управления.
Автоматическая установка SQL Server Compact 3.5
При создании в среде Visual Studio приложения Microsoft .NET на основе SQL Server Compact 3.5 в момент его первого развертывания на устройстве производится автоматическая установка ядра SQL Server Compact 3.5. При создании в среде Visual Studio приложения в собственном коде установку SQL Server Compact 3.5 придется выполнить вручную. Дополнительные сведения см. в разделе Развертывание приложений для интеллектуальных устройств.
Поддержка каталога данных
DataDirectory — это строка замены, указывающая путь к базе данных. Каталог данных упрощает совместное использование проекта и развертывание приложения, избавляя от необходимости указывать в коде полный путь. Предположим, имеется следующая строка соединения.
"Data Source= c:\program files\MyApp\Mydb.sdf"
При использовании |DataDirectory| (заключенного в символы конвейера, как показано в примере), строку соединения можно записать следующим образом.
"Data Source = |DataDirectory|\Mydb.sdf"
Свойство DataDirectory установлено в AppDomain вызовом метода AppDomain.SetData.
Развертывание управляемых приложений через ClickOnce
ClickOnce представляет собой новую технологию установки приложений, которую SQL Server Compact 3.5 поддерживает для управляемых приложений на настольных компьютерах. ClickOnce упрощает развертывание приложений Windows на веб-серверах и сетевых общих папках. Для развертывания или обновления приложений администраторам необходимо обновлять файлы на сервере. Не обязательно обновлять каждый клиент отдельно. Среда Microsoft Visual Studio 2010 обеспечивает полную поддержку публикаций и обновления приложений, развернутых с помощью ClickOnce. Технология ClickOnce позволяет производить развертывание проектов, созданных на языках Visual Basic, Visual C# и Visual J# (язык Visual C++ не поддерживается). Дополнительные сведения о 64-разрядных версиях развертываний ClickOnce см. в разделе Управление 64-разрядными приложениями баз данных.
См. также
Другие ресурсы
Справка мастера создания подписки
Справка мастера настройки веб-синхронизации
Транзакции (SQL Server Compact)