2

我正在转换 EXCEL 文件中包含的一些数据,我正在使用 OPENROWSET 来执行此操作。我可以使用select *类型语法获取数据,但我没有在结果中返回任何列名。在这种情况下,结果是我想使用或放置在临时表或变量中的一个简单值。

但是,该值在最后一个 select 语句中返回为 NULL。我在这里想念什么?OLEDB 调用中的 SQL 语法是否正确(似乎受到限制)?

declare @catalog_ID nvarchar(100);
set @catalog_ID = (select * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;HDR=yes;Database=D:\[my-worksheet].xlsx','SELECT * FROM [ru_RU$a3:b3]') )
select @catalog_ID;
4

1 回答 1

2

要从您的 OPENROWSET 调用中取回列名,我认为您只需更改HDR=yesHDR=no.

祝你好运。

于 2013-01-18T03:29:25.177 回答