当然是这样了,你的
SELECT  id,productid,style_no,smallimg,isnew,newtime,field1,field2,field3 FROM   #TempTable WHERE   ID > @FirstRec AND  ID < @LastRec把你要输出的值"当"住了,你这时要取id,productid,style_no,smallimg,isnew,newtime,field1,field2,field3 
这些值是可以取到的,你试试.
如果你"非"要按原来的顺序执行语句的话,你可以:SELECT  @TotalRecords as TotalRecords,id,productid,style_no,smallimg,isnew,newtime,field1,field2,field3 FROM   #TempTable WHERE   ID > @FirstRec AND  ID < @LastRec
就可以取到了.

解决方案 »

  1.   

    可我把--Return the total number of records available as an output parameter
    SELECT @TotalRecords = COUNT(*) FROM #TempTable
    放在
    SELECT  id,productid,style_no,smallimg,isnew,newtime,field1,field2,field3 FROM   #TempTable WHERE   ID > @FirstRec AND  ID < @LastRec
    前面也是取不到值的
      

  2.   

    可以了照你的意思
    SELECT  @TotalRecords as TotalRecords,id,productid,style_no,smallimg,isnew,newtime,field1,field2,field3 FROM   #TempTable WHERE   ID > @FirstRec AND  ID < @LastRec
    我取到值了,thanks
      

  3.   

    你在查询分析器里调试一下,如果是因为输出了"两"个数据集而导致你没有接到数据的话,就是我说的毛病,
    在ASP 中你只能接到一个SELECT 的输出
      

  4.   

    你的
    SELECT 
      id,
      productid,
      style_no, 
      smallimg, 
      isnew, 
      newtime,
      field1,
      field2,
      field3
    FROM 
      #TempTable
    WHERE 
      ID > @FirstRec 
    AND
      ID < @LastRec
    已经返回了一个记录集,你的asp去读先读出这个记录集了,去掉就可以了。如:
    alter proc p_a
    as
    select 1 a
    select 2 b
    go在你的asp中如果conn.execute执行将返回1,而不是2所以你的select要去掉。
      

  5.   

    SELECT  @TotalRecords as TotalRecords,id,productid,style_no,smallimg,isnew,newtime,field1,field2,field3 FROM   #TempTable WHERE   ID > @FirstRec AND  ID < @LastRec
    --这样的语句也能执行成功吗!、晕