Поделиться через


Управление 64-разрядными приложениями баз данных

SQL Server Compact является внутрипроцессной базой данных, что означает ограничение до минимума ресурсов развертывания и операционной среды для обеспечения потребностей внедренных в приложение баз данных. Поскольку компоненты принадлежат одному процессу, они должны выполняться в одной 32- или 64-разрядной среде. До выпуска 64-разрядной версии SQL Server Compact с пакетом обновления 1 (SP1) разработчикам приходилось использовать режим WOW64 для установки TargetPlatform x86 вместо использования целевой платформы по умолчанию — AnyCPU. Выпуск 64-разрядной версии SQL Server Compact с пакетом обновления 1 (SP1) означает, что разработчикам больше не придется работать в режиме WOW64. 64-разрядная среда выполнения не влияет на формат данных в базе данных. Поддерживается платформа x64, но не поддерживается платформа Itanium 64.

Примечание

WOW64 является уровнем эмуляции, позволяющим 32-разрядным приложениям работать в 64-разрядной среде, как если бы они выполнялись на 32-разрядной платформе.

К базам данных, созданным в 64-разрядной версии SQL Server Compact с пакетом обновления 1 (SP1), можно получить доступ из 32-разрядной среды выполнения. Выполнение предыдущих версий на 64-разрядных платформах осуществляется путем запуска 32-разрядных выпусков в не предназначенной для них среде, то есть в 64-разрядной Windows в режиме совместимости с 32-разрядной Windows (WOW64).

64-разрядные версии компонентов SQL Server Compact имеются только для среды выполнения SQL Server Compact (SSCERuntime-RUS.msi) и компонентов конфигурации репликации слиянием (SSCEServerTools-RUS.msi). 64-разрядные версии установщиков имеют те же имена, что и 32-разрядные версии. Сведения о получении компонентов SQL Server Compact см. в файле Readme для Microsoft SQL Server Compact 3.5. Последняя версия файла Readme доступна в Центре загрузки Майкрософт.

Совместимость параллельного выполнения

SQL Server Compact поддерживает сценарии параллельных сред выполнения. Некоторые версии сред выполнения SQL Server Compact могут выполняться одновременно с другими версиями, установленными на том же компьютере. Поддержка параллельного выполнения может оказаться полезной, если требуется поддержка прежних версий клиентов, использующих устаревшие форматы базы данных, наряду с более поздними форматами. Разные версии клиентских приложений можно синхронизировать с помощью устанавливаемых на сервер совместимых сред выполнения SQL Server Compact.

Среду выполнения SQL Server Compact 3.1 можно установить вместе с новыми версиями SQL Server Compact, включая 3.5, 3.5 с пакетом обновления 1 (SP1) и 64-разрядную версию 3.5 с пакетом обновления 1 (SP1). В случае если SQL Server Compact с пакетом обновления 1 (SP1) устанавливается на компьютер, на котором уже имеется SQL Server Compact, существующая версия обновляется до новой. В случае если версия среды выполнения та же, что и существующая, установщик не выполняет установку. 

При сценарии параллельного выполнения SQL Server Compact и 64-разрядной версии SQL Server Compact с пакетом обновления 1 (SP1) установите старую версию последней, чтобы избежать ее обновления. Поддержка параллельного выполнения для режима WOW64 и 64-разрядной версии собственного SQL Server Compact с пакетом обновления 1 (SP1) возможна, если экземпляр WOW64 устанавливается последним.

Использование баз данных с приложениями прежних версий

Для открытия файлов баз данных, созданных в старых версиях SQL Server Compact, 64-разрядная версия SQL Server Compact с пакетом обновления 1 (SP1) имеет тот же формат файлов базы данных, что и 32-разрядные версии 3.5 и 3.5 с пакетом обновления 1 (SP1). Формат файлов базы данных SQL Server Compact 3.1 несовместим с более новыми версиями SQL Server Compact. Новые версии, включая 64-разрядный SQL Server Compact с пакетом обновления 1 (SP1), не имеют обратной совместимости с SQL Server Compact 3.1. Сведения об обновлении файлов прежних версий базы данных см. в разделе Обновление с предыдущих версий (SQL Server Compact) или в Upgrade.

Файлы баз данных, созданные в 64-разрядной версии SQL Server Compact с пакетом обновления 1 (SP1) имеют тот же формат, что и файлы, созданные в 32-разрядных версиях SQL Server Compact и SQL Server Compact с пакетом обновления 1 (SP1). Хотя 64-разрядная версия SQL Server Compact с пакетом обновления 1 (SP1) имеет одинаковый формат файлов с SQL Server Compact, они не могут получать одновременный доступ к одному и тому же файлу. Дополнительные сведения см. в подразделе Параллельный доступ к ресурсам далее в этом разделе.

Совместимость репликации слиянием

64-разрядная версия компонента SQL Server Database Engine может реплицировать данные с помощью среды выполнения SQL Server Compact с пакетом обновления 1 (SP1) и 32-разрядных компонентов репликации служб IIS. На этот сценарий не влияет версия собственной 64-разрядной среды выполнения. При переходе на 64-разрядную среду выполнения также поддерживаются все существующие 32-разрядные среды выполнения.

SQL Server Management Studio

В этом разделе описана 64-разрядная совместимость для среды SQL Server Management Studio.

Совместимость среды выполнения

На 64-разрядных версиях клиентов среда SQL Server Management Studio 2008 выполняется в режиме WOW64, поэтому для использования средств среды SQL Server Management Studio необходимо установить 32-разрядную версию SQL Server Compact.

Совместимость файлов баз данных

Среда SQL Server Management Studio 2008 поддерживает файлы SQL Server Compact (включая 3.5 с пакетом обновления 1 (SP1) и 64-разрядную версию 3.5 с пакетом обновления 1 (SP1)), но не работает с файлами SQL Server Compact 3.1. Среда SQL Server Management Studio 2005 поддерживает функциональность SQL Server Compact 3.1, но не работает с файлами SQL Server Compact и более поздних версий. Management Studio 2005 и 2008 можно установить в одной операционной среде, совместив тем самым поддержку обоих форматов файлов баз данных SQL Server Compact. Если среда SQL Server Management Studio 2005 используется для открытия файлов SQL Server Compact и более поздних версий, она выводит сообщение об ошибке «Недопустимая версия базы данных».

Обозреватель серверов Visual Studio

В этом разделе описана 64-разрядная совместимость для обозревателя серверов Visual Studio.

Примечание

Для разработки приложений для настольных компьютеров предпочтительной средой является Visual Studio 2010. Для разработки приложений для интеллектуальных устройств предпочтительной средой является Visual Studio 2008 с пакетом обновления 1 (SP1). Среда Visual Studio 2010 не поддерживает разработку приложений для интеллектуальных устройств. Дополнительные сведения см. в разделе Установка среды разработки.

Совместимость среды выполнения

Среда Visual Studio 2008 и Visual Studio 2010 работают в режиме WOW64 на 64-разрядных клиентах. Поэтому необходимо установить 32-разрядную версию SQL Server Compact, чтобы обеспечить доступность этих средств в среде Visual Studio 2008 и Visual Studio 2010.

Совместимость файлов баз данных

Среды Visual Studio 2008 и Visual Studio 2010 поддерживают SQL Server Compact, включая версию 3.5 с пакетом обновления 1 (SP1) и 64-разрядную версию 3.5 с пакетом обновления 1 (SP1), но не будут работать с файлами SQL Server Compact 3.1. Среда Visual Studio 2005 поддерживает функциональность SQL Server Compact 3.1, но не будет работать с файлами SQL Server Compact и более поздних версий. Среды Visual Studio 2005 и Visual Studio 2008 или Visual Studio 2010 можно установить на одном компьютере, что обеспечит поддержку обоих форматов файлов баз данных SQL Server Compact. Если среда Visual Studio 2005 будет использована для открытия файлов SQL Server Compact версии 3.5 и более поздних версий, она будет выводить сообщение об ошибке «Недопустимая версия базы данных».

Параллельный доступ к ресурсам

SQL Server Compact предоставляет доступ к базе данных для нескольких соединений. Поддерживаются не все сценарии, в которых приложения различных версий SQL Server Compact соединяются с одной базой данных. 

В сценарии, где один файл базы данных пытаются открыть приложения 64-разрядной версии SQL Server Compact с пакетом обновления 1 (SP1) и SQL Server Compact, файл откроет то приложение, которое первым получило к нему доступ. Приложение, которое попытается открыть базу данных повторно, получит ошибку «Несовместимый тип общей памяти».

32-разрядная версия SQL Server Compact версии 3.5 с пакетом обновления 1 (SP1) может работать параллельно с 64-разрядной версией SQL Server Compact версии 3.5 с пакетом обновления 1 (SP1), но первоначальная версия SQL Server Compact не может открывать файл параллельно с 32- или 64-разрядной версией SQL Server Compact версии 3.5 с пакетом обновления 1 (SP1).

Управление установками и развертываниями

Собственные 64-разрядные среды выполнения SQL Server Compact доступны только через Интернет. Ниже приведены URL-адреса для 64-разрядных сред выполнения на следующих языках:

Если все необходимые компоненты развернуты нестандартно с включением непосредственно в проект собственных DLL-библиотек, то ресурсы необходимо разместить в папках проекта верхнего уровня. Необходимо создать папку для каждого типа архитектуры процессора, включая x86 и AMD64. Архитектура Itanium 64 не поддерживается. Чтобы отобразить тип архитектуры процессора для конкретного компьютера, откройте командную строку и выполните следующую команду:

echo %PROCESSOR_ARCHITECTURE%

Чтобы отобразить те же сведения в сценарии VBScript, выполните следующий код:

Set WshShell = WScript.CreateObject("WScript.Shell")
Set WshSysEnv = WshShell.Environment("SYSTEM")
WScript.Echo WshSysEnv("PROCESSOR_ARCHITECTURE")

Дополнительные сведения о развертывании 64-разрядных приложений см. в разделе Развертывание 64-разрядных приложений в документации по Visual Studio. Дополнительные сведения о развертывании приложений для настольных компьютеров, созданных с использованием SQL Server Compact, см. в разделе Развертывание приложений для настольных компьютеров.

Примечание

Начиная с версии SQL Server Compact 3.5 с пакетом обновления 2 (SP2), в развертывание с использованием технологии ClickOnce интегрируется MSI файл 64-разрядной версии среды выполнения SQL Server Compact. Если пользователь устанавливает приложение, построенное с помощью SQL Server Compact 3.5 с пакетом обновления 2 (SP2), в 64-разрядной системе с использованием технологии ClickOnce, а издатель указал в качестве необходимого компонента установки SQL Server Compact 3.5 с пакетом обновления 2 (SP2), то будут установлены 32-разрядная и 64-разрядная среда выполнения SQL Server Compact. В предыдущих версиях SQL Server Compact 3.5 устанавливалась только 32-разрядная среда выполнения SQL Server Compact.

См. также

Другие ресурсы

Поддержка параллельного использования версий SQL Server Compact

ODBC 64-Bit Information

OLE DB 64-Bit Information

64-Bit Integer Structures