2009-11-17 84 views
0

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

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

到目前为止,我还“创造”一个新的数据库,去了“任务”>“导入数据”工作。

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

Unrecognized database format Northwind2007.accdb.

是否有人成功将此数据库导入SQL?另外,有没有人知道.accdb文件格式和Access 2003 .mdb格式有什么不同?

感谢您的输入。

+0

为什么在这个世界上,任何人都想与Northwind数据库混为一谈?这是一堆垃圾,所有最差的做法记录在一个地方。 – 2009-11-17 23:57:13

+1

也许是因为Northwind数据库已经建好,并且有成千上万的代码示例可以使用它。为了学习编程概念,它节省了时间。 – jac 2009-11-18 14:19:23

回答

2

即使更简单的方法将是微软SQL Server Migration Assistant访问(SSMA访问)。

+0

我使用SQL Server Migration Assistant 2005进行Access V4.0,并且运行良好。感谢您的链接。 – Chris 2009-11-17 15:03:24

+0

哇,谢谢。这是简单的方法! – callisto 2012-06-13 18:07:16

1

是不是有一个原因,你不只是下载并安装Northwind database for SQL 2000?如前所述,它可以很好地适用于SQL 2005,但Microsoft建议使用Adventure Works数据库。

+0

AW涵盖了NW中缺少的更多特定于SQL 2005的功能。 – 2009-11-17 03:51:50

+0

Northwind2007数据库与2000年以来的典型Northwind数据库有很大不同。客户,员工,产品和供应商是一些已更改的主表。 – Chris 2009-11-17 15:01:31

+0

我不知道他们对Northwind做了大的改变,它仍然是如何不制作数据库的主要例子? – 2009-11-19 03:13:21

0

Access 2007与以前的Access数据库之间的主要区别之一是与multiset列相关,如here所述。为什么不尝试通过ms-access升级向导导出数据库,而不是从SSMS导入数据库?网上还有一些(不一定是免费的)升级工具。

2

问题是,“Microsoft Access”选项导入向导硬编码以期望扩展名为.mdb的文件。这对于SQL Server 2008来说是同样的问题;打开.accdb类型的文件失败,“没有编辑器可用于...”

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