将 SQL 数据库 (mdf) 迁移到 SQL Compact Edition (sdf) 的方法

Posted

技术标签:

【中文标题】将 SQL 数据库 (mdf) 迁移到 SQL Compact Edition (sdf) 的方法【英文标题】:Methods to migrate SQL Database (mdf) to SQL Compact Edition (sdf) 【发布时间】:2009-08-06 05:18:44 【问题描述】:

我有 4 个 SQL Server 2005 db,我想迁移到 SQL CE。我知道我无法保留 SProcs、视图和函数 (Differences Between SQL Server Compact and SQL Server),但我想保留其他所有内容。

我已经尝试过这个应用程序,SQL Server to SQL Server Compact Edition Database Copy,但它在我身上出错了。我有来源并正在调查它,但我想我会检查并确保我没有过度复杂化我的实际目标的解决方案。

有没有一种简单的方法可以将标准 SQL .mdf 转换为 SQL CE .sdf

现在我最好的想法是设置从 SQL 2005 标准到 SQL CE 的复制。

【问题讨论】:

【参考方案1】:

http://erikej.blogspot.com/2010/02/how-to-use-exportsqlce-to-migrate-from.html

【讨论】:

这个也适用于大型数据库(与我尝试过的其他数据库不同)。确保创建一个足够大的新 SDF(使用连接字符串中的参数)。 Danny 提到的参数是:Max Database Size=4091【参考方案2】:

1. 使用SQL Server to SQL Server Compact Edition Database Copy 与 sqlcompact 3.1 或 3.0 而不是 sql compact 3.5 你可以使用像sun virtual box这样的虚拟机,在上面安装sql compact 3或3.1,然后在里面转换你的数据库

2.您可以手动转换为sql compact

【讨论】:

它应该适用于 3.5,但它不支持 SP。【参考方案3】:

使用 SDFViewer 实用程序:

转到工具菜单 > 从 SQL Server

说得够多了……

【讨论】:

+1 似乎可以工作(仍在运行),SDFViewer 是一个商业 3rd 方工具。【参考方案4】:

如果您从 2005 年开始编写对象脚本并在 CE 中运行脚本会怎样?那会给你数据库的结构,然后你可以选择/插入?

我没试过,但是管理工作室中SQL的数据库导出/导入工具呢?

【讨论】:

大部分来自 SSMS 的脚本对象都不能在 SQL CE 中运行,因为它们使用了 sys 表之类的东西。您也不能使用 SSMS 中的工具。 SQL Server Management Studio 导入/导出工具似乎不支持 CE。 (至少在 2008 R2 中不会。)

以上是关于将 SQL 数据库 (mdf) 迁移到 SQL Compact Edition (sdf) 的方法的主要内容,如果未能解决你的问题,请参考以下文章

怎么将mdf文件导入到sql serversql数据库

.mdf文件转为.sql文件

如何生成mdf文件,然后加到数据库中?

sql2008 怎么打开.mdf的文件

将 SQL 数据库文件 MDF 和 LDF 移动到新位置

在sql2000中创建的备份mdf、 ldf文件怎么样导入到mysql数据库或oracle数据库中