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

我需要将一个Excel电子表格导入到SQL Server 2005中。我需要采取哪些步骤来实现这一点?

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

这里的说明假定SQL Server 2000

  • 打开SQL Server企业pipe理器
  • 用鼠标右键单击相应的服务器
  • select导入数据
  • 通过向导运行。
    • 在第一个屏幕上单击下一步
    • select“Microsoft Excel”作为您的数据源
    • inputXLS文件的path,然后单击下一步。
    • input数据库的连接详细信息,然后单击下一步。

根据你想要对数据做什么,你有一些新的select。 对于一次性工作,我一般会觉得导入所有excel数据最简单,然后在SQL Server中进行编辑,但是如果你要在多个文件上重复这个操作,你可能需要制作一个非常性感的导入脚本。

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

你也可以用OPENROWSET来做

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

一个替代的快速和(非常)肮脏的解决scheme是添加一个公式的Excel表,如下所示:

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

复制这个(CTRL + D),你很好去。

如果您的电子表格没有很好地组织到SQL表格的一对一导入中(例如,格式化为具有子标题,空格,累积列等的可读性),那么可以使用现成的工具做这种types的事情。 以Khronos Excel Pump为例。 免责声明 – 我为卖这个的公司工作。 这是非常可configuration的,所以你可以保持你的电子表格人为布局,并仍然可靠地导入到结构化的SQL表,包括用身份字段值replace文本值或旋转广泛的网格来缩小表等