注册 登录
编程论坛 ASP技术论坛

读取数据库第n条到第m条的记录完整实例怎么写?

xuehao 发布于 2011-04-06 09:19, 790 次点击
我是初级的,想问下:
如何从数据表中取出第n条到第m条的记录,
下面的意思我也不太懂,
Set rs = Server.CreateObject("ADODB.Recordset")
sql="select top n-m+1 * from [user1] where (id not in (select top m-1 id from [user1]))"  rs.open Sql, conn,1,1

接下应当怎么输出显示效果呢。
6 回复
#2
yms1232011-04-06 14:00
如果id是数字可以使用between and
比如读id为10到50的记录
select * from tablename where id between 10 and 50
Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from [user1] where id between 10 and 50"  rs.open Sql, conn,1,1
#3
hams2011-04-06 14:47
for i=1 to n
 rs.MoveNext
next
#4
twtrwr2011-04-06 21:43
sql="select top n-m+1 * from [user1] where (id not in (select top m-1 id from [user1]))"  rs.open Sql, conn,1,1
select top n-m+1 * from [user1] 这句的意思是查询数据表user1中前 n-m+1 条记录,

select top m-1 id from [user1])这句的意思是按id查询数据表user1中为前 m-1  条记录,

 where (id not in 这句的意思是id不再上面那个m-1条记录中

这个好像不是读取数据库第n条到第m条的记录
2楼的和3楼版主的方法就很好啊。。。
#5
xuehao2011-04-08 08:44
谢你们,但是我还是不会,那位给我写下具体的实例呢?
是翻页中的实例,求当前页面的第1条记录到当前页面的最后条记录。
#6
twtrwr2011-04-08 10:48
dim str,conn
Set conn = Server.CreateObject("ADODB.Connection")
str = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath("db/ly.mdb") ly.mdb为留言数据库

conn.open str
set rs=Server.CreateObject("adodb.recordset")
 rs.open "select name as 姓名 ,title as 标题, content as 内容 from ly",conn,1,3  打开连接

rs.pagesize=5  rs的pagesize属性,,定义每页中显示几条记录
if request("pages")<>"" then  判断pages是否为空,pages为传递的参数
  epage=cint(request("pages"))
   if epage<1 then epage=1
   if epage>rs.pagecount then epage=rs.pagecount
else
epage=1
end if
rs.absolutepage=epage  
absolutepage属性是当前页面的绝对位置,
,如果epage为2,他会自动显示在第二页的第一条。absolutepage计算的过程自动完成,计算公式为 AbsolutePosition = (AbsolutePage-1) * PageSize+1


for i=0 to rs.pagesize-1
if rs.bof or rs.eof then exit for
%>
<tr  bgcolor="#000000"  align="left">
<td><%=rs(0).value%></td><td><%=rs(1).value%></td><td><%=rs(2).value%></td>
</tr>
<%
rs.movenext()
next   通过for来显示记录

<div id="right">
<p align="center">
<a href="liuyan.asp?pages=1">第一页</a>&nbsp;
<a href="liuyan.asp?pages=<%=epage-1%>">前一页</a>&nbsp;
<a href="liuyan.asp?pages=<%=epage+1%>">后一页</a>&nbsp;
<a href="liuyan.asp?pages=<%=rs.pagecount%>">末页</a>
</p>
<p align="center">现在是第<%=epage%>页一共有<%=rs.pagecount%>页</p>
</div>

大体上就是这样,希望对你有用
#7
xuehao2011-04-09 09:16
twtrwr  你好:
我看到你跟帖,好高兴呢,我再好好的看看,感谢你,和楼上的朋友给我的支持。
1