1 Le nom de champ de la requête claire
2 Utilisez RS (0) plus rapide que RS (nom)
3 Avant d'utiliser la valeur RS SET REST, affectez-le à la variable
4 [Test] Données 10W actuelles, Preservation de la base de données d'accès
Grâce à l'extraction normale | Extraire via la procédure de stockage |
1 Le nom de champ de la requête claire
Sélectionnez * dans [data_table]
C'est-à-dire la valeur d'enregistrement de tous les champs de la base de données Data_Table espèce
L'efficacité d'exécution de l'instruction SELECT * est très faible, car lors de l'exécution d'une telle instruction, deux requêtes sont effectuées d'abord.
Donc
Sélectionnez Nom, Pwd dans [DATA_TABLE]
2 Utilisez RS (0) plus rapide que RS (nom)
Enregistrez le nom de champ ou les nœuds d'index de champ dans RS ().
RS (0) correspondant à Rs (nom)
Rs (1) correspondant à Rs (PWD)
Il a été prouvé qu'il utilise les enregistrements d'accès aux numéros d'index plusieurs fois plus rapides que le nom du champ, et la question en fonction de la chaîne pour interroger plus de temps et de ressources système que de remettre en question par question entière
3 Avant d'utiliser la valeur RS SET REST, affectez-le à la variable
<%
Set rs = const.execute (sélectionnez cname, cpwd dans [data_table] où id = 1)
Si ce n'est pas Rs.Eof alors
Faire tout en pas Rs.Eof
CNAME = RS (0) Attribuez RS aux variables
CPWD = RS (1)
....
Rs.MovEnext
Boucle
Terminer si
%>
4 [Test] Il y a 10 W de données et la base de données d'accès est stockée.
A. par extraction normale:
<%
Set rs = server.createObject (adodb.oldset)
Rs.OOPEN SELECT * From People Order by Id Desc, CN, 1,1
Faire tout en pas Rs.Eof
Response.Write RS (ID) & |
Rs.MovEnext
boucle
%>
Prenez 3 250 000 millisecondes 3 secondes
B. Extraction à travers la procédure de stockage:
<%
Set cn = server.createObject (adodb.connection)
CN.OOPEN DITEUR = {Microsoft Access Driver (* .MDB)};
Définir cmd = server.createObject (adodb.command)
Cmd.activeConnection = CN
cmd.commandtex
Définir RS = CMD.Execute
faire tout en pas Rs.Eof
Response.Write RS (ID) & |
Rs.MovEnext
boucle
%>
Prendre 2 187,500 millisecondes 2 secondes
C. Utilisez la méthode getrows () pour extraire:
<%
Set cn = server.createObject (adodb.connection)
Définir cmd = server.createObject (adodb.command)
CN.OOPEN DITEUR = {Microsoft Access Driver (* .MDB)};
Cmd.activeConnection = CN
cmd.commandtex
Définir RS = CMD.Execute
RSArray = Rs .
Pour i = 0 à Ubound (RSArray, 2) UBOUND (tableau, NUM) où l'indice de signification de Num est utilisé dimensionnellement, il n'est pas rempli dans une dimension par défaut, 2 est égal à deux-dimension
Response.Write rsArray (0, i) & |
suivant
%>
Consommation temporelle: 187,500 millisecondes 0,2 seconde
rsarray (a, b)
A représente le numéro de champ B de l'ensemble des enregistrements dans le tableau du tableau de l'ensemble d'enregistrements.
Comme suit: ci-dessous:
| IDENTIFIANT | uname | vers le haut |
| Rsarray (0,0) | Rsarray (1,0) | Rsarray (2,0) |
| Rsarray (0,1) | Rsarray (1,1) | Rsarray (2,1) |
| Rsarray (0,2) | Rsarray (1,2) | Rsarray (2,2) |