从xls(Excel)文件创build一个SQL表

我试图将一个Excel文档转换为SQL 2005中的表。我发现下面的链接,并想知道它是否看起来像一个解决scheme。 如果是这样,那么@excel_full_file_name语法是什么,path将在哪里相对?

http://www.siccolo.com/Articles/SQLScripts/how-to-create-sql-to-convert-Excel_to_table.html

如果您只是想要一个纯粹的sql解决scheme,您可以使用BULK INSERT T-SQL命令。 您必须先将文件另存为csv / text。

BULK INSERT YourDestinationTable FROM 'D:\YourFile.csv' WITH ( FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' ) GO 

或者,您可以尝试OPENROWEST – 再次,一个纯粹的T-SQL解决scheme。

 SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;DATABASE=D:\YourExcelFile.xls', 'Select * from YourExcelFile') 

这真的取决于你想要多less控制和灵活性,SSIS路线将会比这些方法有好处。

浏览代码,我期望它是Excel文档的完整path名称:

例如:c:\ path \ to \ my \ excel \ document.xls

我还没有安装这个程序,也没有运行它,所以我可能是错的 – 但这就是乍一看。

我会build议使用SSIS / DTS包来转换。 这很容易。

SSIS Excel示例

**注意这个例子是使用向导。 您可以将SSIS / DTS包作为一个工作在SQL框中运行。

本示例将数据从SQL复制到Excel。 但这只是交换OleDb提供者的方式,让它在相反的方向上工作。