我可以在我的查询中执行此操作:
SELECT * FROM OPENROWSET(BULK 'C:\myPC.file', SINGLE_BLOB)
但我该怎么做?
Declare @Var = 'C:\myPC.file'
SELECT * FROM OPENROWSET(BULK @Var, SINGLE_BLOB)
我尝试了三个'''
单引号,但仍然说错误的语法。
答案 0 :(得分:6)
您无法参数化OPENROWSET(或OPERNQUERY等)。仅限常数。
Declare @Var = 'C:\myPC.file';
Declare @SQL varchar(1000);
SET @SQL = 'SELECT * FROM OPENROWSET(BULK ''' + @Var + ''', SINGLE_BLOB)';
EXEC (@sql)