我需要将一个Excel电子表格导入SQL Server 2005中。为了完成这个任务,我需要采取哪些步骤?
"数据转换服务"向导是你的朋友。
以下说明假定使用SQL Server 2000。
根据你想要对数据执行的操作,有几个选项可供选择。对于一次性任务,我通常发现最容易的方法是将所有Excel数据导入,然后在SQL Server中进行编辑。但如果你要在多个文件上重复执行此操作,则可能需要编写一个非常高效的导入脚本。
如果你希望再次运行它,则可以使用向导保存DTS包,然后在企业管理器的 "数据转换服务" 部分进行编辑。这是学习DTS工作方式的好方法。
INSERT INTO SOMETABLE SELECT * FROM OPENROWSET( 'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\testing.xls','SELECT * FROM [Sheet1$]')
另一种快速且(非常)简单的解决方案是在Excel表格中添加一个公式,如下所示:
="INSERT INTO table1(col1, col2, col3) SELECT " & A1 & ", '" & B1 & "', '" & C1 & "'"
如果您的电子表格没有为一对一导入到SQL表格进行良好的组织(例如,使用副标题、空白、总计列等格式以提高可读性),那么有一些现成的工具可以用来完成这种操作。请参见Khronos Excel Pump作为示例。免责声明 - 我在销售此产品的公司工作。它非常可配置,因此您可以保持电子表格的人类布局,并可靠地导入到结构化的SQL表格中,包括将文本值替换为标识字段值或将宽网格旋转为窄表格等。