Новые возможности SQL Server Compact 4.0
В этом разделе описаны новые возможности, представленные в SQL Server Compact 4.0 и предыдущих выпусках, в том числе SQL Server Compact 3.5, SQL Server Compact 3.5 с пакетом обновления 1 (SP1) и SQL Server Compact 3.5 с пакетом обновления 2 (SP2).
Новые возможности SQL Server Compact 4.0
В MicrosoftSQL Server Compact 4.0 появился ряд новых функций, а также новый сценарий с SQL Server Compact 4.0 в качестве базы данных для веб-приложений и веб-сайтов ASP.NET. К основным возможностям SQL Server Compact 4.0 относятся:
Разработка приложений SQL Server Compact 4.0 с WebMatrix и Visual Studio 2010 с пакетом обновления 1 (SP1)
Возможность применения Visual Studio 2010 SP1 (выпуски Premium, Ultimate и Professional) для разработки веб-приложений ASP.NET и приложений Windows для настольных компьютеров в SQL Server Compact 4.0. Для обзора базы данных можно использовать такие конструкторы, как Server Explorer, Query Designer и Transact-SQL Editor. Конструкторы в системе проектов веб-приложений ASP.NET можно также использовать для привязки элементов управления на веб-страницах к данным в SQL Server Compact.
Кроме того, в Microsoft Visual Web Developer 2010 Express с пакетом обновления 1 (SP1) также поддерживается SQL Server Compact 4.0 для разработки веб-приложений ASP.NET. В Visual Studio 2010 с пакетом обновления 1 (SP1) также поддерживается разработка приложений для SQL Server Compact 3.5 параллельно с SQL Server Compact 4.0.
WebMatrix можно использовать для разработки веб-приложений ASP.NET с SQL Server Compact 4.0 и для управления базами данных SQL Server Compact, включая выполнение запросов Transact-SQL к SQL Server Compact.
WebMatrix можно использовать для переноса данных и схем из SQL Server Compact 4.0 в более поздние версии SQL Server, и веб-сайты можно переносить таким образом в другие версии SQL Server одним щелчком мыши.
Усовершенствованный API-интерфейс
Интеграция со средой ADO.NET Entity Framework 4.0 (.NET Framework 4)
SQL Server Compact 4.0 поддерживает модель программирования «сначала код», принятую в среде ADO.NET Entity Framework. Кроме того, столбцы, имеющие сформированные сервером ключи, например удостоверение или ROWGUID, также поддерживаются в SQL Server Compact 4.0 при использовании с ADO.NET Entity Framework 4 (это версия ADO.NET Entity Framework, выпущенная с .NET Framework 4).
Примечание
Выпуск SQL Server Compact 4.0 работает только со средой ADO.NET Entity Framework 4, в составе которой есть .NET Framework 4. При попытке использования SQL Server Compact 4.0 со средой ADO.NET Entity Framework 3.5 с пакетом обновления 1 (SP1) (в состав которой входит .NET Framework 3.5 с пакетом обновления 1 (SP1)) возникает ошибка.
Новый API для DbConnection.GetSchema
В SQL Server Compact 4.0 предусмотрен новый API System.Data.SqlServerCe.SqlCeConnection.GetSchema(), с помощью которого можно получать схему из файла базы данных SQL Server Compact. В API также предусмотрена поддержка System.Data.Common.DbConnection.GetSchema.
Новый API для SqlCeConnectionStringBuilder
Новый API System.Data.SqlServerCe.SqlCeConnectionStringBuilder() позволяет разработчику программными средствами создавать правильные строки подключения для SQL Server Compact 4.0, а также анализировать и перестраивать существующие строки подключения. Кроме того, в API предусмотрена поддержка System.Data.Common.DbConnectionStringBuilder.
Новый синтаксис Transact-SQL
В SQL Server Compact 4.0 поддержка запросов Transact-SQL еще больше расширена: добавлен новый синтаксис Transact-SQL для OFFSET & FETCH с предложением Order BY. Возможности OFFSET-FETCH позволяют пользователям выполнять запросы к файлу базы данных с разбивкой результатов по страницам. Дополнительные сведения см. в разделе Предложение ORDER BY (SQL Server Compact).
Улучшения для веб-приложений и веб-сайтов ASP.NET
Поддержка ASP.NET
В SQL Server Compact 4.0 ASP.NET поддерживается без необходимости какой-либо настройки. Флаг SQLServerCompactEditionUnderWebHosting в SQL Server Compact 4.0 больше не требуется и удален.
Уменьшение виртуальной памяти
Потребление виртуальной памяти на каждое соединение SQL Server Compact в SQL Server Compact 4.0 снижено. Разница видна в следующем примере: если приложение пытается открыть 40–50 одновременных соединений в SQL Server Compact 3.5 с пакетом обновления 2 (SP2), возникнет исключение «недостаточно виртуальной памяти». Однако в SQL Server Compact 4.0 приложение может легко открыть любое необходимое число соединений с файлом базы данных, до максимально возможных 256, без возникновения нехватки виртуальной памяти.
Средний уровень доверия
Главное требование приложений ASP.NET — возможность работы в среде со средним (частичным) уровнем доверия, и это поддерживается в SQL Server Compact 4.0.
Повышение надежности, безопасности и легкости развертывания
Повышенная надежность
SQL Server Compact 4.0 протестирован и сертифицирован для работы с веб-приложениями ASP.NET и способен справиться с нагрузкой веб-сайтов начального уровня. SQL Server Compact 4.0 имеет превосходную производительность в сценариях с параллельными соединениями и многочисленными запросами к базе данных.
Обновление алгоритма шифрования
SQL Server Compact 4.0 поддерживает алгоритмы шифрования SHA 2, которые обеспечивают более высокий уровень защиты для зашифрованных файлов базы данных SQL Server Compact.
Совет
Алгоритмы, которые поддерживались в более ранних версиях SQL Server Compact, поддерживаются в SQL Server Compact 4.0 только при открытии файла базы данных для обновления до SQL Server Compact 4.0. Таким образом, при открытии файла базы данных SQL Server Compact 3.5 с помощью SQL Server Compact 4.0 этот файл базы данных SQL Server Compact 3.5 необходимо будет обновить до SQL Server Compact 4.0 с помощью API System.Data.SqlServerCe.SqlCeEngine.Upgrade().
Улучшение настройки
Настройка и установка SQL Server Compact 4.0 улучшены, что обеспечивает правильную установку компонентов SQL Server Compact для платформ x86 и x64 на 64-разрядных компьютерах. Это гарантирует беспроблемную работу в SQL Server Compact 4.0 на 64-разрядном компьютере как режима WOW64, так и 64-разрядных собственных приложений.
В SQL Server Compact 4.0 файл EXE для платформы x86 будет успешно устанавливаться на 32-разрядном компьютере, а файл MSI для платформы x64 — только на 64-разрядном. На 64-разрядном компьютере файл MSI для платформы x64 будет устанавливать как 32-, так и 64-разрядные компоненты SQL Server Compact. Это изменение в установке устраняет необходимость устанавливать файл MSI для платформы x86 на 64-разрядном компьютере.
Все необходимые для закрытого развертывания SQL Server Compact 4.0 двоичные файлы (и 32- и 64-разрядные) находятся в папке %Program Files%\Microsoft SQL Server Compact Edition\v4.0\Private и %Program Files (x86)%\Microsoft SQL Server Compact Edition\v4.0\Private.
Новые возможности SQL Server Compact 3.5 с пакетом обновления 2 (SP2)
SQL Server Compact 3.5 с пакетом обновления 2 (SP2) входит в состав SQL Server 2008 R2 и Visual Studio 2010. Начиная с выпуска SQL Server Compact 3.5 с пакетом обновления 2 (SP2), SQL Server Compact предоставляет следующие новые функции:
Поддержка редактора Transact-SQL в Visual Studio 2010. Теперь с помощью редактора Transact-SQL можно выполнять запросы Transact-SQL к базе данных SQL Server Compact, представленные в свободной форме. Редактор Transact-SQL также позволяет просматривать и сохранять подробные прогнозируемые и фактические планы отображения запросов для баз данных SQL Server Compact. В предыдущих версиях функции, обеспечиваемые редактором Transact-SQL, были доступны только при использовании среды SQL Server Management Studio. Дополнительные сведения см. в разделе Редактор Visual Studio Transact-SQL.
Поддержка отслеживания изменений в базах данных SQL Server Compact. Добавлены новые классы и элементы в пространство имен System.Data.SqlServerCe с целью обеспечения поддержки отслеживания изменений уровня строки в таблицах базы данных. При включении отслеживания для таблицы в инфраструктуре отслеживания сохраняются сведения об операциях вставки, удаления и обновления в таблице. Эти сведения сохраняются в столбцах, добавляемых к отслеживаемой таблице, и в системных таблицах, сохраняемых инфраструктурой отслеживания. Использование этих новых классов дает возможность настраивать, включать и отключать отслеживание изменений в таблице, а также получать доступ к данным отслеживания, сохраняемым для таблицы. Использовать отслеживание изменений можно для обеспечения функциональности в ряде случаев. Например, можно обеспечить возможность пользовательской реализации синхронизации клиента с сервером или клиента с другим клиентом для периодически подключаемых систем (OCS). Также отслеживание изменений можно использовать для реализации пользовательского приложения прослушивателя. Дополнительные сведения см. в разделе Построение приложений, использующих отслеживание изменений (SQL Server Compact).
Поддержка нового управления версиями сборок и структуры каталогов, позволяющей приложениям SQL Server Compact, использующим закрытое развертывание, получать исправления и критические обновления. Дополнительные сведения см. в разделе Сравнение отдельного развертывания с центральным развертыванием (SQL Server Compact).
Добавлена поддержка для развертывания 64-разрядной версии ClickOnce. Дополнительные сведения см. в разделе Развертывание приложений для настольных компьютеров.
SQL Server Compact поддерживает Windows 7 и Windows Server 2008 R2. Список всех поддерживаемых версий Windows см. в разделе Требования к оборудованию и программному обеспечению.
Новые возможности SQL Server Compact 3.5 с пакетом обновления 1 (SP1)
SQL Server Compact 3.5 с пакетом обновления 1 (SP1) входит в состав SQL Server 2008 и Visual Studio 2008 с пакетом обновления 1 (SP1). Начиная с выпуска SQL Server Compact 3.5 с пакетом обновления 1 (SP1), в SQL Server Compact представлены следующие новые возможности.
SQL Server Compact поддерживает ADO.NETEntity Framework. Платформа Entity Framework позволяет работать с данными в формате объектов и свойств конкретного домена (например, клиентами и их адресами) без необходимости обращаться к базовым таблицам и столбцам базы данных, где хранятся эти данные.
Поддержка средой ADO.NET платформы Entity Framework позволяет разработчикам создавать гибкие, строго типизированные запросы к контексту объекта Entity Framework с помощью выражений LINQ и стандартных операторов запросов LINQ прямо из среды разработки.
SQL Server Compact поддерживает параметры сортировки с учетом регистра на уровне базы данных. Дополнительные сведения см. в разделе Работа с параметрами сортировки (SQL Server Compact).
Можно выполнять администрирование базы данных SQL Server Compact, хранящейся на интеллектуальном устройстве или настольном компьютере, используя среду SQL Server Management Studio (среда SSMS) в SQL Server 2008.
SQL Server Compact поддерживает репликацию новых типов данных в SQL Server 2008, таких как date, time, datetime2, datetimeoffset, geography и geometry. Новые типы данных в SQL Server 2008 сопоставляются с типами nchar, nvarchar, image и т. д. Дополнительные сведения о типах данных в SQL Server 2008 см. в разделе Типы данных электронной документации по SQL Server 2008.
SQL Server Compact может выполняться в 64-разрядной версии среды в собственном режиме. Соответствующими MSI-файлами являются 64-разрядные версии среды выполнения SQL Server Compact (SSCERuntime-RUS.msi) и 64-разрядные версии серверных средств SQL Server Compact (SSCEServerTools-RUS.msi). Поддержка для 32-разрядных версий MSI-файлов не изменилась. Разработчикам, использующим развертывание ClickOnce для приложений, необходимо указать URL-адреса загрузки как 32-разрядных, так и 64-разрядных версий. Дополнительные сведения см. в разделе Управление 64-разрядными приложениями баз данных.
SQL Server Compact поддерживает репликацию данных с SQL Server 2000, SQL Server 2005 и SQL Server 2008 за счет использования Sync Services for ADO.NET. Sync Services for ADO.NET доступны для настольных и мобильных устройств.
SQL Server Compact поддерживает репликацию данных с SQL Server 2005 и SQL Server 2008 с помощью репликации слиянием и удаленного доступа к данным.
SQL Server Compact включает улучшенную совместимость версий с SQL Server для репликации слиянием.
Серверные средства для SQL Server Compact 3.5 с пакетом обновления 1 (SP1), используемые для настройки репликации слиянием и удаленного доступа к данным, можно загрузить с веб-узла центра загрузки Майкрософт. Обратите внимание, что параллельная установка серверных средств SQL Server Compact 3.5 с пакетом обновления 1 (SP1) с предыдущими версиями серверных средств на компьютере, выполняющем роль IIS-сервера, невозможна. Серверные средства SQL Server Compact 3.5 с пакетом обновления 1 (SP1) способны реплицировать данные между SQL Server Compact 3.5 и SQL Server 2005 или SQL Server 2008. Серверные средства SQL Server Compact 3.5 с пакетом обновления 1 (SP1) также поддерживают репликацию данных между SQL Server 2005 Compact Edition или SQL Server 2005 Mobile Edition и SQL Server 2005 или SQL Server 2008.
SQL Server Compact поддерживает Windows Server 2008. Список всех поддерживаемых версий Windows см. в разделе Требования к оборудованию и программному обеспечению.
Новые возможности SQL Server Compact 3.5
SQL Server Compact 3.5 был выпущен вместе со средой Visual Studio 2008. Начиная с выпуска SQL Server Compact 3.5, SQL Server Compact предоставляет следующие новые функции.
В SQL Server Compact реализован тип данных timestamp (rowversion). rowversion — это тип данных, автоматически формирующий двоичные числа, для которых гарантирована уникальность в базе данных. Обычно он используется как механизм обозначения версий строк в таблицах.
SQL Server Compact поддерживает локальную область транзакций на настольных компьютерах.
Конструктор таблиц SQL Server Compact в Visual Studio 2008 усовершенствован и теперь предоставляет пользовательский интерфейс для создания связей по первичному и внешнему ключу между таблицами.
В SQL Server Compact поддержка инструкций Transact-SQL расширена следующим образом.
Вложенные запросы в предложении FROM
CROSS APPLY и OUTER APPLY
CAST
TOP
SET IDENTITY INSERT
SQL Server Compact поддерживает символы в Юникоде для любой локали, включая символы китайской кодировки GB 18030.
SQL Server Compact поддерживает разработку приложений рабочего стола с помощью языков Visual C# 2008 Express Edition и Visual Basic 2008 Express Edition.
SQL Server Compact версии 3.5 поддерживает параллельную установку с предыдущей версией (3.1) на настольных компьютерах. Дополнительные сведения о взаимодействии с более ранними версиями см. в разделе Обновление с предыдущих версий (SQL Server Compact).
Для поддержки прежних операционных систем с устаревающими алгоритмами шифрования, а также для поддержки новых и надежных методов шифрования в SQL Server Compact была добавлена обратная совместимость режимов шифрования. Полный список режимов шифрования с обратной совместимостью см. в разделе Обновление с предыдущих версий (SQL Server Compact).
SQL Server Compact поддерживает технологию LINQ to SQL. LINQ to SQL — это компонент проекта LINQ. Он обеспечивает инфраструктуру времени выполнения для управления реляционными данными в виде объектов, сохраняя при этом возможность работы с запросами. Этот компонент переводит запросы LINQ на язык Transact-SQL для выполнения их на SQL Server Compact, а затем переводит результирующие табличные данные обратно в объекты, используя метод, определенный разработчиком приложения. Технология LINQ to SQL не поддерживает разработку для SQL Server Compact. Для SQL Server Compact должна использоваться программа SqlMetal.exe. Средство командной строки SqlMetal создает код и сопоставление для компонента LINQ to SQL платформы .NET Framework. По умолчанию файл SQLMetal расположен в каталоге %ProgramFiles%\Microsoft SDKs\Windows\vn.nn\bin. Дополнительные сведения см. в разделе Создание кода в LINQ to SQL. SqlMetal можно использовать следующим образом.
Из базы данных можно сформировать исходный код и атрибуты или файл сопоставления.
Из базы данных можно сформировать промежуточный файл языка разметки баз данных (DBML) для пользовательской настройки.
Из DBML-файла можно сформировать код и атрибуты или файл сопоставления.
Другие новые функции
В SQL Server Compact 4.0 предусмотрены следующие компоненты: SSCEVSTools-RUS.msi, SSCEWebTools-RUS.msi, SSCERuntime_x86-ENU.exe и SSCERuntime_x64-ENU.exe.
Средства Microsoft Visual Studio 2010 SP1 Tools для SQL Server Compact 4.0 (SSCEVSTools-RUS.msi): этот файл устанавливает компоненты времени разработки SQL Server Compact, которые нужны для поддержки конструктора в Visual Studio 2010 с пакетом обновления 1 (SP1). Компоненты времени разработки представляют собой пользовательский интерфейс, диалоговые окна и среду времени разработки, которые используются для написания приложений под SQL Server Compact. Компоненты SQL Server Compact времени разработки будут установлены в каталог %ProgramFiles%\Microsoft Visual Studio 10\Common7\IDE\. Образцы устанавливаются в каталог %ProgramFiles%\Microsoft SQL Server Compact Edition\v4.0\Samples. Эти компоненты привязываются к Visual Studio, и их нельзя использовать независимо. Образцы SQL Server Compact и файлы заголовков SQL Server Compact (для собственной разработки) также устанавливаются этим файлом MSI.
Среда выполнения SQL Server Compact 4.0 (SSCERuntime_x86-ENU.exe & SSCERuntime_x64-ENU.exe): этот файл устанавливает компоненты времени выполнения SQL Server Compact для настольных компьютеров в основной папке %ProgramFiles%\Microsoft SQL Server Compact Edition\v4.0. Компоненты среды выполнения SQL Server Compact для настольных компьютеров необходимы для разработки приложений в Visual Studio, а также для запуска приложений на базе SQL Server Compact на настольном компьютере. Файл SSCERuntime-RUS.msi можно также загрузить через Интернет.
Веб-средства SQL Server Compact 4.0 (SSCEWebTools-RUS.msi): этот файл устанавливает компонент создания сценариев для базы данных в глобальный кэш сборок. Это обеспечивает для WebMatrix возможность миграции баз данных на более старшие номера SKU для SQL Server. Файл MSI может использоваться только с WebMatrix.