declare @A nvarchar(10),@B nvarchar(10)
set @B=hr
set @A= '30608H '
select * from @B where [email protected]
提示错误 :
服务器: 消息 137,级别 15,状态 2,行 5
必须声明变量 '@B '。
表名变量应该如何处理呢、。
------解决方案--------------------
declare @A nvarchar(10),@B nvarchar(10)
set @B=hr
set @A= '30608H '
exec( 'select * from '[email protected]+ ' where Hr_NO= '[email protected])
------解决方案--------------------
在sql语句中 栏位名 或者表名是变量,那就需要使用动态sql
declare @A nvarchar(10),@B nvarchar(10)
set @B=hr
set @A= '30608H '
exec( 'select * from '+ @B+ ' where Hr_NO= '[email protected])