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

时间:2010-08-13 05:27:02

标签: sql sql-server-2008 import-from-excel

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

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

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

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

4 个答案:

答案 0 :(得分: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位机器上,就像一个魅力 - 就这样做!!

答案 1 :(得分:2)

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

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

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

答案 2 :(得分: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中有微小的变化)。

答案 3 :(得分:1)

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

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

以下是它的图片:

SQLizer.io ready to convert xlsx to sql