2

EXCEL ファイルに含まれる一部のデータの変換に取り組んでおり、これを行うために OPENROWSET を使用しています。型構文でデータを取得できますselect *が、結果に列名が返されません。この場合、結果は、使用したい、または一時テーブルまたは変数に配置したい 1 つの単純な値です。

ただし、この値は最後の 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

HDR=yesOPENROWSET 呼び出しから列名を取得するには、に変更するだけでよいと思いますHDR=no

幸運を。

于 2013-01-18T03:29:25.177 に答える