从Excel文件加载数据并加载到临时表中

时间:2013-01-02 12:27:57

标签: c# .net sql-server sql-server-2008

我正在尝试将Excel文件加载到Temp表中,以便我可以在Temp Table中执行一些操作。

我使用以下语句打开excel文件。但现在我需要将它加载到临时表中。

SELECT A.*
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
                'Excel 12.0;Database=D:\b1.xlsx; hdr=yes',
                'SELECT * FROM [Co Contact$]') AS A;

Iam尝试的是像这样的事情

select top 0 *
into #mytemptable
from A

我需要在不指定excel文件中列的名称的情况下声明Temp Table。 (因为excel文件可能包含近100列)

有可能吗?

1 个答案:

答案 0 :(得分:2)

假设您的第一个语句有效,将其放入临时表中则需要执行此操作:

SELECT A.*
INTO #MyTempTable
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
                'Excel 12.0;Database=D:\b1.xlsx; hdr=yes',
                'SELECT * FROM [Co Contact$]') AS A;

然后你可以玩#mytemptable

Select * From #mytemptable;