NextrecordSet et Getrows peuvent être très peu utilisés!
Je l'ai utilisé récemment, une bonne chose!
Il est très efficace pour augmenter les ensembles de requêtes par lots et de requête ne sont pas énormes.
NextrecordSet et Getrows sont deux propriétés de Recordset (je confond souvent les propriétés ou les méthodes de # $ # $, et je ne peux pas comprendre la différence entre eux)
Getrows ---> Extraire l'enregistrement des enregistrements définie dans un tableau bidimensionnel. Notre comportement des données de coffre-fort sera transféré sur le tableau. Nous pouvons déconnecter les enregistrements débutants sans utiliser les opérations de métadonnées. Rs.movnext, whilenotrs.eof, etc. peut le sauver.
NEXTRECORDSET ----> est de fournir un ensemble d'enregistrements qui laisse le travail actuel et le transfert vers le deuxième ensemble d'enregistrements lorsque plusieurs requêtes sont soumises en même temps et que plusieurs ensembles de résultats de plate-forme sont formés!
Il est principalement utilisé dans le cas des ensembles de résultats formés par plusieurs sélections
Les exemples sont les suivants:
Dimsql, Rs, Arra, Arrb, Rowsa, RowsB
'' =====3
(La partie de connexion de ADODB.Connection est omise, en supposant que Conn.OpenConCtr)
Sql = "SelectCA1, CA2, CA3, CA4FromTablea" '' --------------- Selecta
SQL = SQL & "SELECTCB1, CB2, CB3, CB4, CB5FROMTABLEB" '' ------------- SELECTB
Setrs = conn.excute (sql)
'' Le résultat d'exécution aura deux ensembles de résultats de sélection, et le jeu d'enregistrements du premier sélection est actuellement actif
Arra = Rs.Getrows '' ---------- Obtenez le tableau 2D de SelectArecordSet
setRS = Rs.NExTRecordSet
'' --------------------- L'étape la plus critique consiste à utiliser NEXTRecordSet pour activer le jeu d'enregistrements suivant
Arrb = Rs.Getrows '' --------- Obtenez à nouveau le deuxième tableau bidimensionnel du deuxième SelectBordset
Rs.Close
setRrs = rien '' -------- Libérez l'objet de la base de données dès que possible et fermez l'ensemble d'enregistrements
Conn.Close
setConn = rien
De cette façon, toutes nos données sur la base de données sont extraites proprement et les ressources de la base de données sont publiées au plus tôt.
'' ---------- //
'' ======== Utilisez l'arraarrb obtenu pour effectuer le traitement de la page, afficher le résultat des données ======
'' Notez que le tableau obtenu après Arra = Getrows, la première dimension représente la colonne et la deuxième dimension représente la ligne
Rowsa = Ubund (Arra, 2) '' ---- Extraire l'indice de deuxième dimension d'Arra, ce qui équivaut à l'obtention du nombre d'enregistrements d'enregistrements
ROWSB = UBUND (ARRB, 2) '' ----- Identique ci-dessus, extraire l'indice de deuxième dimension de l'ARRB
'' Faire des boucles de données:
'' La boucle du premier tableau de sélection
réponse.WRITE "<Ball>"
Fori = 0torowsa
réponse.WRITE "<TR>
réponse.write "<td>" & arra (i, 0) & "</td>" '' tablea.ca1
réponse.write "<td>" & arra (i, 1) & "</td>" '' tablea.ca2
Response.Write "<Td>" & Arra (I, 2) & "</td>" '' Tablea.ca3
réponse.write "<td>" & Arra (I, 3) & "</td>" '' tablea.ca4
réponse.write "</tr>"
Suivant
réponse.write "</s table>
'' La deuxième boucle de table sélectionnée