用ASP或SQL怎么随机读取表中的记录???
比如ACCESS表中有好多的记录,比如有字段:姓名,年龄.网页中设一个"确定"按纽.而后怎么样才能按下"确定"按纽后随机读取表中的"姓名'和"年龄"字段.而后显示出来!!...
比如ACCESS表中有好多的记录,比如有字段:姓名,年龄.网页中设一个"确定"按纽.而后怎么样才能按下"确定"按纽后随机读取表中的"姓名'和"年龄"字段.而后显示出来!!谢谢!
楼上这位仁兄能不能说的详尽点啊~!!就用VBSCRIPT+ASP+SQL描述就可以了,谢谢 展开
楼上这位仁兄能不能说的详尽点啊~!!就用VBSCRIPT+ASP+SQL描述就可以了,谢谢 展开
4个回答
展开全部
楼上说的也有道理,但是存在一个问题,就是如果ID不是连续的,在以前删除过记录,比如删除了ID=11的记录,那么在随机数为11时查询会产生错误。
解决办法是将ID首先存储在数组中,随机数查找数组的下标,最后按数组存储的ID查询就不会出错了(但只能适用在记录数在数组容许的条件,如果记录数太多,此方法运行比较慢)。
解决办法是将ID首先存储在数组中,随机数查找数组的下标,最后按数组存储的ID查询就不会出错了(但只能适用在记录数在数组容许的条件,如果记录数太多,此方法运行比较慢)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上说的有道理,就是弄一个随机数和你表中的id对比,如如果范围设置的合理就抽出该记录。最好是以主健为参照。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql="select top 1 * from 表 order by newid()"
从表中随机选一条记录
从表中随机选一条记录
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
利用rnd先生成一个随机数:
Randomize()
sid=INT((1017-89+1)*RND+89)‘注:比如按照你的id字段进行随机取值,查看你数据库中的id范围,此式即生成89-1017之间的随机数,然后按照生成的随机id为条件从数据库中取值
set rs=server.CreateObject("adodb.recordset")
sql="select * from 表 where id="&sid&""
rs.open sql,conn,1,1
------------
实际应用中,你可以:
<form action="?action=suiji" method="post">
。。
</form>
<%
action=request("action")
if action="suiji" then
使用随机数取出一条记录
end if
%>
---
楼上说的对,如果删除过记录的话,取值会出错,那就加个判断,
if 不为空,再读库,索引所有记录id不太现实,慢死了
Randomize()
sid=INT((1017-89+1)*RND+89)‘注:比如按照你的id字段进行随机取值,查看你数据库中的id范围,此式即生成89-1017之间的随机数,然后按照生成的随机id为条件从数据库中取值
set rs=server.CreateObject("adodb.recordset")
sql="select * from 表 where id="&sid&""
rs.open sql,conn,1,1
------------
实际应用中,你可以:
<form action="?action=suiji" method="post">
。。
</form>
<%
action=request("action")
if action="suiji" then
使用随机数取出一条记录
end if
%>
---
楼上说的对,如果删除过记录的话,取值会出错,那就加个判断,
if 不为空,再读库,索引所有记录id不太现实,慢死了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询