次のコードを使用していますが、すべて正常に動作します
DECLARE @Directory varchar(100)
SELECT @Directory = 'c:\XML\'
DECLARE @FileExist int
DECLARE @FileName varchar(500),@DeleteCommand varchar(1000),@FullFileName varchar(500), @SQLFullFileName varchar(500)
DECLARE @X XML
SELECT @X = CONVERT(xml,[ICECAT-interface],2)
FROM OPENROWSET(BULK 'C:\XML\1382.xml',SINGLE_BLOB) AS Import([ICECAT-interface])
select P1.X.value('@ID', 'int') as ProductID,
P2.X.value('@ID', 'int') as ProductID
from @X.nodes('/ICECAT-interface/Product') as P1(X)
cross apply P1.X.nodes('ProductRelated') as PR(X)
cross apply PR.X.nodes('Product') as P2(X)
C:\XML\1382.xml のファイル名の行をこの行に置き換えると
SELECT @X = CONVERT(xml,[ICECAT-interface],2)
FROM OPENROWSET(BULK ' + @FullFileName + ' ,SINGLE_BLOB) AS Import([ICECAT-interface])
ファイルが存在しないというエラーが表示されますが、デバッグ モードでは変数 @FullFileName が存在し、正しいことがわかります。
任意の入力をいただければ幸いです。
ありがとう
ジョン