I'm using this simple query to use a random sorting on a ms-access database:
SELECT pk FROM TABLE ORDER BY Rnd(pk) asc
And it's working fine when i test it with Microsoft Access 2010
However, when i call this query using classic asp, random sorting doesn't work.
Here's my code:
set Rs = Server.CreateObject("ADODB.Recordset")
Rs.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/dbfolder") & "\dbname.mdb"
Rs.Source = "SELECT pk FROM TABLE ORDER BY Rnd(pk) asc"
Rs.CursorType = 3
Rs.CursorLocation = 2
Rs.LockType = 3
Rs.Open()
do while not Rs.eof
'do stuff
Rs.Movenext
loop
You just need to "salt" your random generator:
Finally it seems that i found a solution.
Source:http://www.cosnetics.co.uk/articles/select-random-records-from-access/
Following what's written in the above link
If you find a better solution, i'll be pleased to mark it as the good one. In the mean time, i'll leave this here. hoping that this will help somebody else. (You won't believe it but it took me some time to find it)