急,,asp记录移动的问题?

来源:百度知道 编辑:UC知道 时间:2024/09/20 13:37:28
请指教asp记录移动的问题?

If curPage="" Then
curPage=0
rs.MoveFirst
Else

rs.Move curPage*(rs.PageSize)
response.write curpage*(rs.pagesize)
End If

这段的意思是当前页在第0页也就是第一页的时候,把记录移到头条,

否则把记录移到curpage*(rs.PageSize)当前页乘以(页规定记录数)

不懂的是比如当前页curpage现在是1,也就是第二页,那么现在当前页1乘以(页规定的记录数)2,1乘以2,打印等于2

这个时候指针怎么移动到了第三条记录去了? 1乘以2等于2,应该移动到第2条记录去呀?

然到头条记录是从0开始算起的????? 我只听过字段列是从0开始算起的,没听过从上到下移动记录是从0算起的?

我打开access数据库,里面是从1开始的记录到11条记录的,可是为什么asp指针是从0开始移动然后到最后的10记录呢,

请详细的解释下,谢谢.

rs.Move i 这个方法的使用应该注意以下几点。

rs.open "sql....",cn,3,3 以后
默认情况(有至少1条返回记录)下当前记录的指针是处在第一条记录上,而不是你所理解的在0记录(所有记录之前)上。

当rs.open方法调用以后如果没有返回记录,这时rs.eof和rs.bof两个属性同时为true。

至于移动的参数i,你应该把他理解为是个相对量,而不是一个绝对量。因为默认情况下当前记录的指针是处在第一条记录上,这时候你rs.Move 2的话,1+2当然现在的指针是在第3条记录上。如果你再一次rs.Move 2,那么现在3+2当然指针在第5条记录上了。但是如果当前总共只有4条记录,那指针就越过了记录边界,这时候rs.eof就为true了。

所以说,rs.Move i 不仅仅要看i的数字大小,还要考虑rs指针的当前位置。你完全可以把i看成是移动的“距离”,而不应该把他看成是移动到第几条记录。