set @sql='select max(no) into'+@int_max+' from test'
是将test表中最大的no取出来,并赋给变量@int_max
set @sql=@int_max
是将@int_max的值赋给@sql
print(@sql)
将最大值打印出来

解决方案 »

  1.   

    呵,我昏了:)
    刚开始看SQL?
      

  2.   

    不过这个过程得不到预期的结果。
    变量@int_max在exec(@sql)没有声明,不可能处结果的。
    可以这样
    DECLARE @sql varchar(300)
    set @sql='declare @int_max varchar(20) ;select @int_max=max(no) from test;select @int_max'
    --set @sql='select * from test' 
    --set @int_max='true'
    exec(@sql)
    --set @sql=@int_max
      

  3.   

    'select max(no) into'+@int_max+' from test'
    只会生成一个@int_max参数字符串名字的一个新表。
    去数据库查一下,会找到这张表