select @sql='......'
exec(@sql)

解决方案 »

  1.   

    动态sql:
    declare @csql varchar(200)
    select @csql='declare @Name varchar(50),@tID int ' 
    select @csql=@csql+'select @Name=name,@tID=parentID from '+@tType+'where ID= '+cast(@tID as varchar(50))
    execute(@csql)
      

  2.   

    Declare @SQL NVarchar(500),@Table_Name Varchar(20),@Filtered Char(2)
    Select @Table_Name='vcrRepairDetail'
    Select @Filtered='11'
    Select @SQL='Select * From '+@Table_Name+' Where DocNo Like '''+@Filtered+'%'''
    Exec sp_executesql @SQL
      

  3.   

    declare @name varchar(20),@tid int,@tablename varchar(20),@sql nvarchar(800)
    set @sql ='select @name=name,@tid=parentid from '+@tablename+' where id=@tid'
    execute sp_executesql @sql,N'@name varchar(20) output,@tid int output',
    @p1 output,@p2 output
    print @p1
    print @p2