CREATE PROCEDURE SelectTopNumber
@number int
AS
SET ROWCOUNT @number
select  * from authors order by au_ID 
GO

解决方案 »

  1.   

    动态SQL,用 exec 拼接你要执行的语句。
      

  2.   

    安安
    你说的是什么方法呀,我想知道,难道是id>* and id<*
      

  3.   

    execute sp_executesql 
              N'select top @number * from NewsInfo where NewsType = @type',
              N'@number INT',
              N'@type INT',
              参数1,
              参数2
      

  4.   


    exec ('select top '+  cast(@number as  varcahr(10)  +' * from NewsInfo where NewsType = '+ @type)
      

  5.   


    DECLARE @VCnumber varcahr(10)
    SET @VCnumber=cast(@number as  varcahr(10)
    exec ('select top '+  @VCnumber  +' * from NewsInfo where NewsType = '+ @type)
      

  6.   

    按楼上的这样写为什么还是不行?:
    create procedure up_name
    @type varchar(2),
    @number intasDECLARE @VCnumber varcahr(10)
    SET @VCnumber=cast(@number as  varcahr(10)
    exec ('select top '+  @VCnumber  +' * from NewsInfo where NewsType = '+ @type)