set T_com=server.CreateObject("adodb.command")
T_com.ActiveConnection=conn
T_com.CommandType=4
T_com.CommandText="page"
T_com.Parameters.Refresh
T_com.Parameters("Page")=Page
T_com.Parameters("renttyper")=renttyper
set rs=T_com.execute

解决方案 »

  1.   

    执行到这行的时候T_com.Parameters("Page")=Page出错说项目在所需的名称或序数中未被发现。
      

  2.   

    CREATE proc page 
    @pagenum int,
    @renttyper nvarchar(20) 
    as 
    SET NOCOUNT ON /*-----这一句很重要哦:)),不然它只会认 insert #change......这个数据集:))*/ 
    declare @sql nvarchar(500) --声明动态sql执行语句 
    declare @pagecount int --当前页数 --取得当前数据库的记录总数 
    declare @row_num int 
    begin 
    select @row_num=count(*) from rent where renttype=@renttyper--创建临时表,作为数据过滤 
    create table #change (id int) --判断当前页数 
    if @row_num>15 --大于页面显示记录数,则分页 
    begin 
    set @row_num=@pagenum*15if @row_num=15 
    select top 15 * from rent where renttype=@renttyper
    else 
    begin 
    set @row_num=(@pagenum-1)*15 
    set @pagecount=@row_num 
    set @sql=N'insert #change (id) select top '+cast(@pagecount as char(100))+' id from rent where renttype='''+@renttyper+''' and  id not in (select id from #change) ' 
    exec sp_executesql @sql 
    select top 15* from rent where  renttype=@renttyper and id not in (select id from #change) 
    end 
    end 
    else --只现实全部的数据 
    select * from rent where renttype=@renttyper
    end
    GO
      

  3.   

    还有是不是文字都要用'''+@renttyper+''' 这个格式的?
      

  4.   

    set T_com=server.CreateObject("adodb.command")
    T_com.ActiveConnection=conn
    T_com.CommandType=4
    T_com.CommandText="page"
    T_com.Parameters.Refresh
    T_com.Parameters("@pagenum")=Page   '参数名要和存储过程的对应嘛.
    T_com.Parameters("@renttyper")=renttyper
    set rs=T_com.execute
      

  5.   

    传递文字是不是都要用'''+@renttyper+''' 这个格式的?