Sql Server执行拼接Sql提示the name ” is not a valid identifier.
Sql Server在执行拼接出来的Sql语句时,会提示:
the name ‘select …..’ is not a valid identifier.
例如:
declare @sql nvarchar(max)='select * from table1'
exec @sql
提示:
the name ‘select * from table1’ is not a valid identifier.
原因:
exec 将@sql参数当作存储过程名称,
解决方法:给Sql加上括号即可
exec (@sql)