当查询被声明为varchar时,我无法获得正确的语法。 我下面的原始查询按预期工作:
GetResourceFileText("YourFileNameHere.ext", Assembly.GetExecutingAssembly().GetName().Name);
如果为任何参数选择了多个值,我将在当前查询中收到语法错误:
WHERE location in ('+@location+') AND costcentre in ('+@costcentre+') AND drug_name in ('+@drug_name+')
答案 0 :(得分:0)
我认为在这里,引号会破坏字符串。如果我理解正确,那么它将起作用(更改[']-> ['']并将变量与值连接起来)。
SET @query = 'SELECT ....
WHERE location in (''' + @location + ''') AND costcentre in (''' + @costcentre + ''') AND drug_name in (''' + @drug_name + ''')
如果上述方法不起作用,请尝试打印@query。
答案 1 :(得分:0)
您可以尝试加入参数选择吗?我假设@location是一个参数,所以像这样:
Join(Parameters!location.Value, ",")