1
変数なしで実行されるクエリがあります。それは期待どおりに動作します:文字列パスの代わりに変数を使用するSQL - OPENROWSET
INSERT INTO XMLwithOpenXML(XMLData, LoadedDateTime)
SELECT CONVERT(XML, BulkColumn) AS BulkColumn, GETDATE()
FROM OPENROWSET(BULK 'C:\xml\hamlet.xml', SINGLE_BLOB) AS x;
しかし、私は変数に追加します。それは動作しません(私は文字列を変数に置き換えました)。私はこのエラーを取得する=> '@path'の近くに構文が間違っています。
DECLARE @path varchar(50) = 'C:\xml\hamlet.xml';
INSERT INTO XMLwithOpenXML(XMLData, LoadedDateTime)
SELECT CONVERT(XML, BulkColumn) AS BulkColumn, GETDATE()
FROM OPENROWSET(BULK @path, SINGLE_BLOB) AS x;
ここで何が間違っているのですか?
「C:」付近の構文が正しくありません。 私はこの状況で変数を文字列として認識しません –
@JaxPatočkaは一重引用符を含むのを忘れていました。更新された回答をお試しください。注意してください、私は元のクエリが正常に動作すると信じています。 – andrews