我需要将Excel电子表格导入SQL Server 2005.我需要采取哪些步骤来实现这一目标?
答案 0 :(得分:18)
“数据转换服务”向导是您的朋友。
此处的说明假定SQL Server 2000
根据您要对数据执行的操作,您可以选择一些新选项。对于一次性工作,我通常发现导入所有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表,包括用标识字段值替换文本值或将宽网格旋转到窄表等。