Je voudrai savoir si il est préférable d'ouvrir et de fermer la connexion à la base pour chaque opération ou si il faut ouvrir la connexion faire toutes les opérations sur la base puis la fermer.
PS : connexion à une base access
Je voudrai savoir si il est préférable d'ouvrir et de fermer la connexion à la base pour chaque opération ou si il faut ouvrir la connexion faire toutes les opérations sur la base puis la fermer.
PS : connexion à une base access
Bonjour.
Le plus performant est d'effectuer une et une seule ouverture de connexion.
Pour en être sûr voici un test :
Chez moi le résultat ne fait pas de doute !
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
16
17
18
19
20
21
22
23
24
25
26
27 Dim i As Integer Console.Write(Now & vbCrLf) For i = 1 To 500 Dim CnnTest As New OleDb.OleDbConnection CnnTest.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\MonChemin\MaBase.mdb'" CnnTest.Open() Dim strSQLQ As String = "SELECT Col1 FROM Table1" Dim cmdTest As New OleDb.OleDbCommand(strSQLQ, CnnTest) cmdTest.ExecuteNonQuery() CnnTest.Close() Next Console.Write(Now & vbCrLf) Console.Write(Now & vbCrLf) Dim CnnTest2 As New OleDb.OleDbConnection CnnTest2.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\MonChemin\MaBase.mdb'" CnnTest2.Open() For i = 1 To 500 Dim strSQLQ As String = "SELECT Col1 FROM Table1" Dim cmdTest As New OleDb.OleDbCommand(strSQLQ, CnnTest2) cmdTest.ExecuteNonQuery() Next CnnTest2.Close() Console.Write(Now & vbCrLf)
Avec ouverture-fermeture a chaque fois --> 12 sec
Avec une seule ouverture-fermeture --> 3 sec
En plus Acces a une gestion relativement approximative des connections ... donc quand t'as réussi à en avoir une faut mieux la garder !![]()
Cdt.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager