以data控件为例.给出解决方法 先得到总的记录条数 nCount 生成一个随机数 i 移动 data 到 i mod nCount(取余数)即可.
'从Table1中随机取1个数 MySql=sql ="select Top 1 from Table1 Order By newid()"
sql="select top 1 * from tabx order by newid()"
假定你已经得到了一个记录集,无论是 DAO 或 ADO 的:rs.MoveLastn = rs.RecordsetIf n <= 0 Then Exit SubIf n > 1 Then Randomize n = Int(n * Rnd + 1) rs.AbsolutePosition = n End IfText1 = rs!你的字段
SELECT top 1 * FROM table ORDER BY Rnd(IsNull(id)*0+1)
Order By NewID()可以在SQL Server里面顺利运行通过,但是楼主的问题是在Access数据库中,Order by NewID()在Access中不能通过
先得到总的记录条数 nCount
生成一个随机数 i
移动 data 到 i mod nCount(取余数)即可.
MySql=sql ="select Top 1 from Table1 Order By newid()"
Randomize
n = Int(n * Rnd + 1)
rs.AbsolutePosition = n
End IfText1 = rs!你的字段
FROM table
ORDER BY Rnd(IsNull(id)*0+1)
data1.move(int(Rnd*data1.Recordcount))
n=CInt(Text1.Text)
Randomize
n = Int(n * Rnd + 1)
rs.AbsolutePosition = n Text1.Text=Text1 = rs!你的字段