exec('delete from '+@tbl+' where....')

解决方案 »

  1.   

    exec('select * from '+@TB)
      

  2.   

    使用常量作为变量来调用的语句必须使用动态sql语句,如:
    CREATE PROCEDURE DeleteTable
    @tablename varchar(500)
    as declare @sql varchar(2000) --要执行的动态sql语句字符串
    set @sql='delete from ' + @tablename --给字符串赋值
    exec (@sql) --执行字符串
    go ----------------------------
    执行动态sql语句时,最好将整个字符串赋值给一个字符变量,然后再执行这个变量。
      

  3.   

    如果我想把该句的返回值赋到一个变量中该怎么写呢?比如我想得到exec('select uID from ' + @Tb)的结果,假设变量名是@UserID,返回值只有一个结果。还有exec是什么意思呀,希望各位前辈指教了。