0

我最近下载了 Access 2007 Northwind 示例数据库,现在想将该数据库转换为 SQL 2005 数据库。我使用的是 SQL 2005 的开发人员版,而不是 SQL Express。

我安装了 Office 12.0 Access 数据库引擎 OLE DB 提供程序驱动程序以使用 Access 2007。

到目前为止,我已经“创建”了一个新数据库,转到“任务”>“导入数据”。

此时,SQL Server 导入和导出向导对话框显示,我选择“数据源”作为 Microsoft Access,并浏览到然后选择的文件。我单击下一步,现在 SQL Server 显示以下错误:

无法识别的数据库格式 Northwind2007.accdb。

有没有人成功地将这个数据库导入到 SQL 中?另外,有谁知道 .accdb 文件格式和 Access 2003 .mdb 格式的区别是什么?

感谢您的输入。

4

4 回答 4

2

问题是“Microsoft Access”选项“导入向导”被硬编码为需要一个扩展名为 .mdb 的文件。SQL Server 2008 也是同样的问题;打开 .accdb 类型的文件失败,“没有可用于...的编辑器”

一种解决方法是使用 OLE DB。在向导的数据源下拉列表中,选择“Microsoft Office 12.0 Access Database Engine OLE DB Provider”。您可能需要编辑连接属性以输入 Jet OLEDB:Engine Type=5 以便能够“查看”特定于 .accdb 格式的功能。但是,我不知道 SQL Server 将如何处理所谓的“复杂”(多值)数据类型!

于 2009-11-17T10:06:30.070 回答
2

更简单的方法是 Microsoft SQL Server Migration Assistant for Access (SSMA for Access)。

于 2009-11-17T13:25:35.210 回答
1

您不只是为 SQL 2000下载和安装 Northwind 数据库是否有原因?如前所述,它适用于 SQL 2005,但 Microsoft 建议改用 Adventure Works 数据库。

于 2009-11-17T03:38:01.200 回答
0

Access 2007 和以前的 Access 数据库之间的主要区别之一与多集列有关,如此所述。与其从 SSMS 导入数据库,不如尝试通过 ms-access 升级向导导出它?网上也有一些(不总是免费的?)升级工具。

于 2009-11-17T04:56:06.757 回答