<%
' Movendo para registro aleatório - Extensão de Steven Jones
Se não (nome do conjunto de registros.bof e nome do conjunto de registros.eof) Então
'repõe o cursor para o início
Se (RecordSetName.CursorType > 0) Então
Nome do conjunto de registros.MoveFirst
Outro
Nome do conjunto de registros.Requery
Terminar se
Nome do conjunto de registros_totalrn = -1
RecordsetName_totalrn = RecordsetName.RecordCount ' ony funciona em alguns conjuntos de registros, mas muito mais rápido
If (recordsetname_totalrn = -1) Then ' e se não funcionou, ainda temos que contar os registros.
'conta o total de registros iterando pelo conjunto de registros
Nome do conjunto de registros_totalrn=0
Enquanto (não é o nome do conjunto de registros.EOF)
nome do conjunto de registros_totalrn = nome do conjunto de registros_totalrn + 1
Nome do conjunto de registros.MoveNext
Wend
'repõe o cursor para o início
Se (RecordSetName.CursorType > 0) Então
Nome do conjunto de registros.MoveFirst
Outro
Nome do conjunto de registros.Requery
Terminar se
Terminar se
' agora faça os ajustes finais e vá para o registro aleatório
nome do conjunto de registros_totalrn = nome do conjunto de registros_totalrn - 1
Se recordsetname_totalrn > 0 Então
Randomizar
Nome do conjunto de registros.Move Int((nome do conjunto de registros_totalrn + 1) * Rnd)
Terminar se
Terminar se
'tudo feito; você deve sempre verificar se há um conjunto de registros vazio antes de exibir os dados
%>