<%
' Pasando a registro aleatorio - Extensión de Steven Jones
Si no (nombre del conjunto de registros.bof y nombre del conjunto de registros.eof) Entonces
'restablece el cursor al principio
Si (RecordSetName.CursorType > 0) Entonces
Nombre del conjunto de registros.MoveFirst
Demás
Nombre del conjunto de registros. Solicitud
Terminar si
nombre del conjunto de registros_totalrn = -1
RecordsetName_totalrn = RecordsetName.RecordCount ' solo funciona en algunos conjuntos de registros, pero mucho más rápido
If (recordsetname_totalrn = -1) Then ' y si no funcionó, aún tenemos que contar los registros.
'cuenta el total de registros iterando a través del conjunto de registros
Nombre del conjunto de registros_totalrn=0
Mientras (No registra el nombre del conjunto.EOF)
nombre del conjunto de registros_totalrn = nombre del conjunto de registros_totalrn + 1
Nombre del conjunto de registros.MoveNext
Encaminarse a
'restablece el cursor al principio
Si (RecordSetName.CursorType > 0) Entonces
Nombre del conjunto de registros.MoveFirst
Demás
Nombre del conjunto de registros. Solicitud
Terminar si
Terminar si
' ahora haga los ajustes finales y pase al registro aleatorio
nombre_conjunto_registros_totalrn = nombre_conjunto_registros_totalrn - 1
Si recordsetname_totalrn > 0 Entonces
Aleatorizar
Nombre del conjunto de registros.Move Int((nombre del conjunto de registros_totalrn + 1) * Rnd)
Terminar si
Terminar si
' todo listo; siempre debes buscar un conjunto de registros vacío antes de mostrar los datos
%>