如何将Excel电子表格导入SQL Server?

时间:2009-01-23 11:50:28

标签: sql-server excel import

我需要将Excel电子表格导入SQL Server 2005.我需要采取哪些步骤来实现这一目标?

4 个答案:

答案 0 :(得分:18)

“数据转换服务”向导是您的朋友。

此处的说明假定SQL Server 2000

  • 打开SQL Server企业管理器
  • 右键单击相应的服务器
  • 选择导入数据
  • 运行向导。
    • 在第一个屏幕上单击“下一步”
    • 选择“Microsoft Excel”作为数据源
    • 输入XLS文件的路径,然后单击“下一步”。
    • 输入数据库的连接详细信息,然后单击“下一步”。

根据您要对数据执行的操作,您可以选择一些新选项。对于一次性工作,我通常发现导入所有Excel数据最简单,然后在SQL Server中编辑它,但如果你要在多个文件上重复这个操作,你可能想要制作一个非常性感的导入脚本。 / p>

如果要再次运行它,可以使用向导保存DTS包,然后在Enterprise Manager的“数据转换服务”部分中对其进行编辑。这是学习DTS如何工作的好方法。

答案 1 :(得分:9)

你也可以用OPENROWSET

来做
INSERT INTO SOMETABLE SELECT * FROM OPENROWSET( 'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\testing.xls','SELECT * FROM [Sheet1$]')

答案 2 :(得分:7)

另一种快速和(非常)肮脏的解决方案是将一个公式添加到Excel工作表中,如下所示:

="INSERT INTO table1(col1, col2, col3) SELECT " & A1 & ", '" & B1 & "', '" & C1 & "'"

将其复制下来(CTRL + D),你就可以了。

答案 3 :(得分:-2)

如果您的电子表格没有很好地组织成一对一导入到SQL表格(例如,格式化为可读性的子标题,空格,累加器列等),那么就有现成的工具你可以用来做这种事情。有关示例,请参阅Khronos Excel Pump。免责声明 - 我为销售此产品的公司工作。它非常易于配置,因此您可以将电子表格保留在人工布局中,并且仍然可靠地导入结构化SQL表,包括用标识字段值替换文本值或将宽网格旋转到窄表等。