Access随机显示记录解决方案
来源: 阅读:1611 次 日期:2015-01-08 16:41:03
温馨提示: 小编为您整理了“Access随机显示记录解决方案”,方便广大网友查阅!

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

更多信息请查看IT技术专栏

更多信息请查看数据库
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map