string cmdTxt = "Select top " + @tiaoshu + "* from news where BigClassID=" + @BigClassID + " and SmallClassId=" + @SmallClassID + " order by id desc"; 我想把这一条sql语句写成存储过程, 主要是有一个 @tiaoshu 这个参数,不知道如何处理!?以下是存储过程CREATE PROCEDURE dbo.SelectNewsByTBS
@BigClassId int =4,
@SmallClassId int =4
AS
/*select top @tiaoshu * from news where BigClassId=@BigClassId and  SmallClassId=@SmallClassId*/
         select top 20 * from news where BigClassId=@BigClassId and  SmallClassId=@SmallClassId
   RETURNGO小弟这里谢过!!!!!!!!!!

解决方案 »

  1.   

    @tiaoshu  前边定义了吗?
      

  2.   

    CREATE PROCEDURE dbo.SelectNewsByTBS
    (
      @BigClassId int,
    @SmallClassId int,
     @tiaoshu int
    )
    AS
    exec ('select top '+@tiaoshu+' * from news where BigClassId='+@BigClassId+' and SmallClassId='+@SmallClassId+'')
      

  3.   

    CREATE PROCEDURE dbo.SelectNewsByTBS
    @BigClassId int =4,
    @SmallClassId int =4,
    @tiaoshu int
    AS
    exec(
    'select top '+@tiaoshu+' * 
     from news 
     where BigClassId='+@BigClassId+' and SmallClassId='+@SmallClassId)
      
      

  4.   

    --2005
    CREATE PROCEDURE dbo.SelectNewsByTBS
    @BigClassId int =4,
    @SmallClassId int =4,
    @tiaoshu int
    AS
    select top (@tiaoshu) * 
     from news 
     where BigClassId=@BigClassId and SmallClassId=@SmallClassId
      
      

  5.   

    CREATE PROCEDURE dbo.SelectNewsByTBS
    @tiaoshu int,
    @BigClassId int =4,
    @SmallClassId int =4
    AS
        -- 2000    
        exec ('select top '+@tiaoshu+' * from news where BigClassId='+@BigClassId+' and SmallClassId='+@SmallClassId)
        -- 2005/08
        select top (@tiaoshu) * from news where BigClassId=@BigClassId and SmallClassId=@SmallClassId
    GO
      

  6.   


    CREATE PROCEDURE dbo.SelectNewsByTBS
    (
      @BigClassId int,
      @SmallClassId int,
     @tiaoshu int
    )
    AS
    exec ('select top '+@tiaoshu+' * from news where BigClassId='+@BigClassId+' and SmallClassId='+@SmallClassId+'')
      

  7.   


    exec('select top ('+@tiaoshu+') * from news where bigclassid='+@bigclassid+' and smallclassid='+@smallclasid+' order by id desc')