如何将数据从Excel电子表格导出到Sql Server 2008表

问题描述 投票:43回答:4

我想将数据从Excel文件(假设Excel 2003 / .xls)导入到Sql Server 2008。

尝试将链接服务器添加到JET OLE DB Access驱动程序,当然它在64位计算机上失败。但是当我尝试在试验时丢弃链接服务器时,还有另一个错误,即链接服务器已经存在/仍然存在!

我也尝试将Excel驱动程序更改为32位(regedit工具)但不确定它是否正在执行任何操作,同样的错误即将发生!

更多细节:说Excel文件中的Table1有5列。我想再次使用5列映射到Database.dbo.Table1,但在表中使用不同的名称。还有办法做这样的导入吗?

sql sql-server-2008 import-from-excel
4个回答
86
投票

在SQL Server Management Studio中,打开对象资源管理器,转到要将数据加载到的数据库,右键单击,然后选择“任务”>“导入数据”。

这将打开“导入数据向导”,该向导通常可以很好地从Excel导入。您可以选择一个Excel文件,选择要从中导入数据的工作表,您可以选择要将其存储到哪个表中,以及列将是什么。非常灵活。

您可以将其作为一次性运行,也可以将其作为SQL Server Integration Services(SSIS)包存储到文件系统或SQL Server本身,并一遍又一遍地执行(甚至计划在给定时间,使用SQL Agent)。

更新:是的,是的,是的,你可以做你所问的所有事情 - 你有没有尝试过至少一次运行该向导?

好的,这里来了 - 一步一步:

第1步:选择您的Excel源代码

enter image description here

第2步:选择您的SQL Server目标数据库

enter image description here

第3步:从SQL Server数据库中选择源工作表(来自Excel)和目标表;看到“编辑映射”按钮!

enter image description here

第4步:检查(并根据需要更改)Excel列到表中SQL Server列的映射:

enter image description here

步骤5:如果以后要使用它,请将SSIS包保存到SQL Server:

enter image description here

第6步: - 成功!这是一个64位的机器,就像一个魅力 - 就这样做!


2
投票

有几种工具可以将Excel导入SQL Server。

我正在使用DbTransfer(http://www.dbtransfer.com/Products/DbTransfer)来完成这项工作。它主要专注于在数据库和excel,xml等之间传输数据......

我之前尝试过openrowset方法和SQL Server Import / Export Assitant。但我发现这些方法不必要复杂且容易出错,与使用其中一个可用的专用工具相比。


1
投票

在SQL Server 2016中,向导是一个单独的应用程序。 (重要:Excel向导仅在32位版本的向导中可用!)。使用the MSDN page获取指示:

On the Start menu, point to All Programs, point toMicrosoft SQL Server , and then click Import and Export Data.
—or—
In SQL Server Data Tools (SSDT), right-click the SSIS Packages folder, and then click SSIS Import and Export Wizard.
—or—
In SQL Server Data Tools (SSDT), on the Project menu, click SSIS Import and Export Wizard.
—or—
In SQL Server Management Studio, connect to the Database Engine server type, expand Databases, right-click a database, point to Tasks, and then click Import Data or Export data.
—or—
In a command prompt window, run DTSWizard.exe, located in C:\Program Files\Microsoft SQL Server\100\DTS\Binn.

之后它应该与@ marc_s的答案几乎相同(可能在UI中有微小的变化)。


1
投票

作为替代方案,有几种基于Web的工具可将Excel文件转换为SQL文件。

https://sqlizer.io将生成一个表定义文件,然后将所有数据作为插入语句,然后它可以简单地导入SQL Server Management Studio(文件>打开>文件...在SQL SMS中) - 或者导入到任何其他SQL兼容的数据库中。

这是它的图片:

SQLizer.io ready to convert xlsx to sql

© www.soinside.com 2019 - 2024. All rights reserved.