10W éléments de données disponibles, la base de données d'accès est enregistrée
Par extraction normale:
La copie de code est la suivante:
<%
SetConn = server.createObject ("adodb.connection")
c & server.mappath ("db2.mdb")
Conn.OpenConstr
Setrs = server.createObject ("adodb.recordSet")
SQL = "SELECT * FROMPEOPLEORDERBYIDDESC"
Rs.OpenSQL, Conn, 1,1
Dowhilenotrs.eof
Response.Writers ("id") & "|"
Rs.MovEnext
Boucle
%>
http://www.cnbruce.com/test/getrows/show1.asp
Il faut 3 250 000 millisecondes, et la valeur totale du test moyenne est d'environ 3 secondes.
====================================================================.
Utilisez la procédure stockée pour extraire:
La copie de code est la suivante:
<%
SetConn = server.createObject ("adodb.connection")
Setcmd = server.createObject ("adodb.command")
Conn.open "Provider = Microsoft.Jet.oledb.4.0; DataSource =" & Server.Mappath ("DB2.MDB")
cmd.activeConnection = Conn
cmd.commandText = "select * fromPeopleOrderByIdDesc"
Setrs = cmd.execute
Dowhilenotrs.eof
Response.Writers ("id") & "|"
Rs.MovEnext
Boucle
%>
http://www.cnbruce.com/test/getrows/show2.asp
Il a fallu 2 187,500 millisecondes et la valeur totale du test moyenne était d'environ 2 secondes.
=====================================================================.
Les deux ci-dessus ne peuvent pas résoudre complètement le problème du temps d'exécution long. La raison principale est que la boucle doit extraire des enregistrements de la base de données à chaque fois (la vitesse de commande est relativement rapide)
Alors qu'en est-il de l'utilisation de la méthode getrows ():
La copie de code est la suivante:
<%
SetConn = server.createObject ("adodb.connection")
Setcmd = server.createObject ("adodb.command")
Conn.open "Provider = Microsoft.Jet.oledb.4.0; DataSource =" & Server.Mappath ("DB2.MDB")
cmd.activeConnection = Conn
cmd.commandText = "select * fromPeopleOrderByIdDesc"
Setrs = cmd.execute
rsArray = Rs.Getrows ()
Fori = 0Toubound (RSArray, 2)
Response.WritersArray (0, i) & "|"
Suivant
%>
http://www.cnbruce.com/test/getrows/show3.asp
Il a fallu 187,500 millisecondes et la moyenne du test total est d'environ 0,2 seconde.
La méthode getrows () consiste à copier les données de l'enregistrement dans un tableau bidimensionnel. Il s'agit d'un tableau bidimensionnel. Le premier indice marque le champ et le second marque le numéro d'enregistrement.
Donc rsArray = Rs.Getrows ()