管理 64 位数据库应用程序

SQL Server Compact 是进程中的数据库,这意味着将部署和操作环境资源减到最少,以满足应用程序内嵌入的数据库的需要。由于组件在进程中,因此它们必须运行在相同的 32 位或 64 位环境中。在 SQL Server Compact 3.5 Service Pack 1 (SP1) 的 64 位版本发布之前,开发人员被迫使用 WOW64 模式(方法是将 TargetPlatform 设置为 x86),而不是使用默认的目标平台 AnyCPU。 SQL Server Compact 3.5 SP1 的 64 位版本意味着不再要求开发人员使用 WOW64。数据库中的数据格式不受使用 64 位运行时的影响。支持 x64 平台,但不支持 Itanium 64。

备注

WOW64 是一个允许 32 位应用程序运行的仿真层,好像它们在 32 位平台上运行。

由 SQL Server Compact 3.5 SP1 64 位创建的数据库可以由 32 位运行时访问。在 64 位平台上运行早期版本是通过以 Windows 64 位上的 Windows 32 位 (WOW64) 兼容模式非本身运行 32 位版本完成的。

安装 64 位组件的 SQL Server Compact 安装只有 SQL Server Compact 运行时 (SSCERuntime-ENU.msi) 和合并复制配置组件 (SSCEServerTools-ENU.msi)。安装程序的 64 位版本具有与 32 位版本相同的名称。有关获取 SQL Server Compact 组件的信息,请参阅 Microsoft SQL Server Compact 3.5 的自述文件。自述文件的最新版本可以从 Microsoft 下载中心下载。

并行兼容性

SQL Server Compact 包括对并行运行时方案的支持。SQL Server Compact 运行时的某些版本能够与安装在同一计算机上其他版本同时运行。如果要求您支持将旧的数据库格式与更新的格式一起使用的旧客户端,则并行支持可能是很有用的。客户端应用程序的多个版本可以使用安装在服务器上的兼容 SQL Server Compact 运行时进行同步。

SQL Server Compact 3.1 运行时可以与 SQL Server Compact 的较新版本(包括 3.5、3.5 SP1 和 3.5 64 位 SP1)并行安装。对于 SQL Server Compact 3.5 SP1 安装在已经运行 SQL Server Compact 3.5 的计算机上的情况,将现有安装升级到较新版本。对于运行时安装与现有运行时相同的情况,安装程序不启用安装选项。 

为了允许 SQL Server Compact 3.5 和 SQL Server Compact 3.5 SP1 64 位的并行方案,请最后安装旧版本以避免升级旧版本。如果最后安装 WOW64 实例,则可能实现对 WOW64 和本机 SQL Server Compact 3.5 SP1 64 位的并行支持。

将数据库与旧版应用程序一起使用

对于打开由 SQL Server Compact 的旧版本创建的数据库文件,SQL Server Compact 3.5 SP1 64 位具有与 3.5 和 3.5 SP1 32 位版本相同的数据库文件格式支持。SQL Server Compact 3.1 数据库文件格式不与 SQL Server Compact 的较新版本向前兼容。较新版本(包括 SQL Server Compact 3.5 SP1 64 位)不与 SQL Server Compact 3.1 向后兼容。 有关升级旧数据库文件的信息,请参阅从早期版本进行升级 (SQL Server Compact)Upgrade

使用 SQL Server Compact 3.5 SP1 64 位创建的数据库文件具有与由 SQL Server Compact 3.5 和 SQL Server Compact 3.5 SP1 32 位创建的文件相同的格式。虽然 SQL Server Compact 3.5 SP1 64 位产生与 SQL Server Compact 3.5 相同的数据库文件格式,但是它们无法同时访问同一文件。有关详细信息,请参阅本主题中后面名为“同时访问资源”的部分。

合并复制兼容性

64 位 SQL Server 数据库引擎 可以在 Internet Information Services (IIS) 上使用 SQL Server Compact 3.5 SP1 32 位运行时和 32 位复制组件来复制数据。此方案不受本机 64 位运行时的版本影响。在更改为 64 位运行时时,包括 32 位运行时的所有现有平台方案也都是支持的方案。

SQL Server Management Studio

本节介绍 SQL Server Management Studio 的 64 位兼容性。

运行时兼容性

SQL Server Management Studio 2008 在 64 位客户端上以 WOW64 模式运行。因此,必须安装 SQL Server Compact 的 32 位版本才能使用 SQL Server Management Studio 内可用的工具。

数据库文件兼容性

SQL Server Management Studio 2008 支持 SQL Server Compact 3.5(包括 3.5 SP1 和 3.5 SP1 64 位),但不能处理 SQL Server Compact 3.1 的文件。SQL Server Management Studio 2005 支持 SQL Server Compact 3.1 的功能,但不能处理 SQL Server Compact 3.5 和更高版本的文件。Management Studio 2005 和 2008 可以安装在同一单元上,从而支持这两种 SQL Server Compact 数据库文件格式的功能。如果使用 SQL Server Management Studio 2005 打开 SQL Server Compact 3.5 或更高版本,则它将显示错误消息“数据库版本无效”。

Visual Studio 服务器资源管理器

本节介绍 Visual Studio 服务器资源管理器的 64 位兼容性。

备注

Visual Studio 2010 是用于开发桌面应用程序的首选环境。Visual Studio 2008 SP1 是用于开发智能设备应用程序的首选环境。Visual Studio 2010 不支持开发智能设备应用程序。有关详细信息,请参阅安装开发环境

运行时兼容性

Visual Studio 2008 和 Visual Studio 2010 在 64 位客户端上以 WOW64 模式运行。因此,必须安装 SQL Server Compact 的 32 位版本才能使用 Visual Studio 2008 和 Visual Studio 2010 内可用的工具。

数据库文件兼容性

Visual Studio 2008 和 Visual Studio 2010 支持 SQL Server Compact 3.5(包括 3.5 SP1 和 3.5 SP1 64 位),但不能处理 SQL Server Compact 3.1 的文件。Visual Studio 2005 支持 SQL Server Compact 3.1 的功能,但不能处理 SQL Server Compact 3.5 和更高版本的文件。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 的不同版本并连接到同一数据库的所有方案。 

在 SQL Server Compact 3.5 SP1 64 位应用程序和 SQL Server Compact 3.5 应用程序尝试打开同一数据库文件的方案中,首先打开数据库的应用程序将成功。随后打开数据库的应用程序将失败,且出现以下错误:“共享内存类型不兼容”。

SQL Server Compact 3.5 SP1 的 32 位版本可以与 SQL Server Compact 3.5 SP1 的 64 位版本同时打开同一数据库,但是 SQL Server Compact 3.5 的初始版本无法与 SQL Server Compact 3.5 SP1 的 32 位或 64 位版本同时打开同一数据库。

管理安装和部署

本机 64 位 SQL Server Compact 运行时仅在 Internet 上可用。64 位运行时的 URL 对下列语言可用:

如果通过将本机 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 位应用程序的详细信息,请参阅 Visual Studio 文档中的“部署 64 位应用程序”。有关部署使用 SQL Server Compact 生成的桌面应用程序的详细信息,请参阅部署桌面应用程序

备注

从 SQL Server Compact 3.5 Service Pack 2 开始,64 位 SQL Server Compact Runtime MSI 已集成到 ClickOnce 部署中。如果用户通过 ClickOnce 技术在 64 位系统上安装使用 SQL Server Compact 3.5 SP2 生成的应用程序,并且发布商选择 SQL Server Compact 3.5 SP2 作为安装前提条件,则将同时安装 32 位 SQL Server Compact 运行时和 64 位 SQL Server Compact 运行时。在以前的 SQL Server Compact 3.5 版本中,只安装 32 位的 SQL Server Compact 运行时。

请参阅

其他资源

对 SQL Server Compact Version 的并行支持

ODBC 64-Bit Information

OLE DB 64-Bit Information

64-Bit Integer Structures