Bonjour;

j'ajoute un millier de lignes dans une table vide et cette opération est très lente (de plus en plus) et prend aussi de plus en plus de mémoire (plus du double).

Merci par avance de vos conseils et suggestions.

Cordialement

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
28
29
30
31
32
Dim I_W_strConn As String
        I_W_strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & _
        "n:\WebCinedi\nouvelle version\New_Exploitant_Courrier.mdb"
        Dim I_W_conn As New OleDbConnection(I_W_strConn)
        I_W_conn.Open()
 
        Dim I_W_strSQL As String = "INSERT INTO  SALLE_ANNEE_SEMAINE_RELACHE_WEBCINEDI " & _
                                " ( NUM_REGION, NUM_SALLE, ANNEE, NO_SEMAINE, Clef )" & _
                                " VALUES " & _
                                "( @NUM_REGION, @NUM_SALLE, @ANNEE, @NO_SEMAINE, @Clef )"
 
 
        Dim I_W_objCmd As New OleDbCommand(I_W_strSQL, I_W_conn)
 
                           I_W_objCmd.Parameters.Add("@NUM_REGION", OleDbType.Integer)
                            I_W_objCmd.Parameters.Item("@NUM_REGION").Value = REGION
                            I_W_objCmd.Parameters.Add("@NUM_SALLE", OleDbType.Integer)
                            I_W_objCmd.Parameters.Item("@NUM_SALLE").Value = NO_SALLE
                            I_W_objCmd.Parameters.Add("@ANNEE", OleDbType.Integer)
                            I_W_objCmd.Parameters.Item("@ANNEE").Value = Annee
                            I_W_objCmd.Parameters.Add("@NO_SEMAINE", OleDbType.Integer)
                            I_W_objCmd.Parameters.Item("@NO_SEMAINE").Value = SEMAINE_COURANTE
                            I_W_objCmd.Parameters.Add("@Clef", OleDbType.VarChar, 13)
                            I_W_objCmd.Parameters.Item("@Clef").Value = Clef
 
                            Try
                                I_W_objCmd.ExecuteNonQuery()
 
                            Catch e As Exception
                                Console.WriteLine(e.Message)
                                Console.ReadLine()
                            End Try