It does not like a variable in that context. This would parse:INSERT INTO T(XmlCol)SELECT * FROM OPENROWSET(BULK '\\TEST\XML Reports\253461_7007_20699.xml',SINGLE_BLOB) AS x
So would this:DECLARE @FilePath varchar(1000) = '\\TEST\XML Reports\'DECLARE @FileName varchar(100) = '253461_7007_20699.xml'Declare @Full Varchar(200) = @FilePath + @FileNameDECLARE @sql NVARCHAR(4000);SET @sql = 'INSERT INTO T(XmlCol) SELECT * FROM OPENROWSET( BULK ''' + @Full+ ''',SINGLE_BLOB) AS x';exec sp_executesql @sql ;