请大家给我看一看,问题出在什么地方:declare @tblname varchar(100),@ckbhx char(2)
declare @sting varchar(100)declare @jlgs intset @ckbhx='01'set @tblname='ckb'+@ckbhxset @sting='select count(*) from '+@tblnameselect @jlgs=execute(@sting)

解决方案 »

  1.   

    declare @tblname nvarchar(100),@ckbhx nvarchar(2)
    declare @sting nvarchar(100)
    declare @jlgs int
    set @ckbhx=N'01'
    set @tblname=N'ckb'+@ckbhx
    set @sting=N'select @jlgs=count(*) from '+@tblname
    exec sp_executesql @sting,N'@jlgs int output',@jlgs output
    select @jlgs--这样试试
      

  2.   

    N'01'这前面的N是什么意思?为什么我的那一段中提示execute有语法错误?
      

  3.   

    N代表是Unicode 字符碰到将动态语句中的值赋给变量的情况,就需要用sp_executesql这个存储过程了。。具体用法可以参考联机帮助