Access随机显示记录(不重复)解决方案:
看了很多人讨论关于access随机取记录的帖子,不才,写了一个随机显示记录的解决方法,希望大家指正。数据库里有5条记录,随机抽取4条。
code
--------------------------------------
<% '-------------------------数据库连接----------------------- Set objConn = Server.CreateObject("ADODB.Connection") objConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" &_ "Data Source=" & Server.MapPath("data.mdb") objConn.Open '-------------------------数据库连接----------------------- '-------------------------检索数据----------------------- strSQL = "SELECT id,DataColumn FROM DataTable" 'Sql语句,检索数据库 Set objRS = Server.CreateObject("ADODB.Recordset") '创建记录集 objRS.Open strSQL, objConn, 1, 1 '执行检索 Count=objRS.RecordCount '得到记录总数 Item=4 '显示记录数 '-------------------------检索数据----------------------- '------------------------------------------------------------------------------- redim a(Item, 2),t(Count) '定义2数组,数组a用来储存记录,数组t用来删选记录 '--------------------------------------- '初始数组数值,目的为了插入数据以后和此值做比较 for each j in t j=0 next '--------------------------------------- '--------------------------------------- ' 随机抽取记录号 Randomize timer '初始化随机数生成器 for j=1 to Item k=int(rnd*Count+1) '从总数里面随机取一条记录 do while t(k)<>0 '判断是否记录是否已经在数组中 k=int(rnd*Item+1) loop t(k)=1 '第k条记录被选中 next '-------------------------------------- j=1:i=1'定义下标 '-------------------------------------- ' 循环选取数据集objRS中的部分记录存放到数组中 Do While Not objRS.Eof if t(j)=1 then a(i,1)=objRS("id") '记录id a(i,2)=objRS("DataColumn") '记录内容 i=i+1 end if j=j+1 objRS.MoveNext Loop '-------------------------------------- '------------------------------------------------------------------------------- '----------------------------显示内容-------------------- for i=1 to Item Response.write "序号"&a(i,1)&"<br>" Response.write "内容"&a(i,2)&"<p>" next '----------------------------显示内容-------------------- '--------------------------- '释放资源 objRs.Close set objRs=nothing objConn.Close set objConn=nothing '--------------------------- %>
Data
id DataColumn -------------------------- 1 a 2 b 3 c 4 d 5 e
相关视频
相关阅读 Origin Access Premier什么时候出 Origin Access Premier上线时间Origin Access Premier多少钱 Origin Access Premier价格一览EA高级会员多少钱 EA高级会员多少钱EA高级会员什么时候出 EA高级会员上线时间一览有线网无法使用Access Connections创建共享热点解决方法通过Access破解MSSQL获得数据ASP将access数据导出为excel电子表的方法ADO连接Access的几种规范做法
热门文章 没有查询到任何记录。
最新文章
Access 2010 的十大优
Access2000如何创建索引Access数据库的存储上限ADO连接Access的几种规范做法Access通用-自动替换数据库中的字符串
人气排行 详解MDB与XLS文件互相转换方法C# Access 读取多级分类 dataset操作Access数据库过大问题的几种解决方案Access 2010 的十大优势如何使用c#操作ACCESS数据库Access数据库支持多少用户同时在线使用MD5加密数据库中的用户密码(一)SQL查找Access中某表是否存在方法
查看所有0条评论>>