Bonjour,
Manquant de connaissance sur ce sujet, j'aurai besoin de vos informations :
Qu'est-il préférable dans le cas d'un oledbdatareader ou d'un odbcdatareader en terme de ressource et de temps d’exécution.
Dans le cas d'un boucle for de 0 à X:
Inclure les fermetures et ouvertures en dehors de la boucle :
Ou inclure directement l'ouverture et la fermeture dans le for:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Ouvrir_connexion() for 0 à X Dim Commande As OleDbCommand = New OleDbCommand(Requete, Connexion) dim rst as oledatareader = commande.executereader while rst.read [...] end while next fermeture_connexion()
Ou créer une connexion X dynamique et la fermé par le rst:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 for 0 à X Ouvrir_connexion() Dim Commande As OleDbCommand = New OleDbCommand(Requete, Connexion) dim rst as oledatareader = commande.executereader while rst.read [...] end while fermeture_connexion() next
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 for 0 à X dim rst as oledatareader Chargement_OleReader(requete,rst,new_connexion()) while rst.read [...] end while rst.close next Public Sub Chargement_OleReader(ByVal Requete As String, ByRef rst As OleDbDataReader, ByVal Connexion As OleDbConnection) Dim Commande As OleDbCommand = New OleDbCommand(Requete, Connexion) rst = Commande.ExecuteReader(CommandBehavior.CloseConnection) End Sub
Ps: Ce code est à titre d'exemple, uniquement démonstratif.
Partager