分页问题:为什么给absolutePage赋值为报错呢?
我按照论坛上原来的帖子自己写了分页的代码,可是只要给RecordSet对象的absolutePage属性赋值就会出错,气死我了!大家能帮我看一看下面的代码错在哪里了吗?谢谢呀!
<%@ Language=VBScript %>
<html>
<head>
<meta name="GENERATOR" Content="Microsoft Visual Studio.NET 7.0">
</head>
<body>
<%
MyPage=Request.QueryString("WhichPage")
if MyPage="" then
MyPage=1
end if
MyPageSize=Request.QueryString("PageSize")
if MyPageSize="" then
MyPageSize=3
end if
set conn=Server.CreateObject("ADODB.Connection")
conn.Open("dsn=SQLDB1;database=NorthWind;uid=sa;pwd=linuxaid;")
sqlcmd="select top 30 productid, productname from products order by productid "
set rs=conn.Execute(sqlcmd)
rs.pagesize=MyPageSize 'set pagesize
rs.absolutePage=MyPage 'set absolutepage (就是这一行,总是出错!)
rs.movefirst
%>
<table border=1>
<%
while not rs.eof
%>
<tr>
<td><%=rs(0).name%>
</td>
<td><%=RS(0).value%>
</td>
<td><%=rs(1).name%>
</td>
<td><%=RS(1).value%>
</td>
</tr>
<%
rs.movenext
wend
%>
</table>
<%
conn.Close
set conn=nothing
set rs=nothing
%>
</body>
</html>
问题点数:30、回复次数:7Top
1 楼eshao(MrXie)回复于 2002-06-18 10:22:38 得分 0
你用cint(mypage)先转化一下,Top
2 楼litdong(不到黄河不死心)回复于 2002-06-18 10:31:12 得分 5
是不是光标得类型不对,你用conn.execute返回的recordset是最简单的,用rs.open 显式的打开一下Top
3 楼zyhowe(★☆偶然的天空☆★)回复于 2002-06-18 10:34:48 得分 25
把set rs=conn.Execute(sqlcmd)改为:
set rs=server.createobject("adodb.recordset")
rs.open sqlcmd,conn,1,3Top
4 楼zyhowe(★☆偶然的天空☆★)回复于 2002-06-18 10:35:22 得分 0
把set rs=conn.Execute(sqlcmd)改为:
set rs=server.createobject("adodb.recordset")
rs.open sqlcmd,conn,1,3Top
5 楼phoenixlj(旭毅)回复于 2002-06-18 10:55:29 得分 0
Execute方法负责运行指定得SQL命令或是存储过程,语法为:
1、以记录为单位(row-returning)得返回值
set recordset=command.execute(recordsaffected,parameters,options)
2、非以记录为单位
command.execute recordsaffected,parameters,options
你用得这种方法好像不支持这个属性,你还一种连接数据库得方式测试一下。Top
6 楼guozz1234(小虫)回复于 2002-06-18 10:58:42 得分 0
如果记录是空的话,也会报错Top
7 楼deldelmeme979(急?急也没用)回复于 2002-06-18 10:59:00 得分 0
试了,可以了:)
不过,我发现我用的while...wend会输出所有的30条记录,而不是每页输出pagesize条记录。应该怎么改一下呢?Top
8 楼julyclyde(Java初学(大学不教只好自己学))回复于 2002-06-18 19:02:23 得分 0
用for..nextTop




