Bonjour à tous,

Toujours débutant, merci d'avance pour votre indulgence

J'ai constaté que lorsque j'accède à ma base de données, apparait ce fameux fichier .ldb qui est sensé disparaitre lorsqu'on referme la connection. Et chez moi il reste .....

L'utilisateur saisit des données dans un form, puis je les intègrent dans la base de données ainsi :

Pour info, connection1() est dans un module :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Module ModuleConnection
    Public base1 As String
    Public base3 As String
 
    Public Sub connection1()
        base1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = "
        base3 = "C:\Users\masession\Documents\escale.mdb;"
    End Sub
 End Module
Une fois que l'utilisateur valide, cette procédure se lance.

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
Public Class Form2
    Dim MyConnect As String
    Dim MyRecordset As ADODB.Recordset 
 
Private Sub valider_Click(sender As System.Object, e As System.EventArgs) Handles valider.Click
Try
           Call connection1()
                MyConnect = base1 & base3
                MyRecordset = New ADODB.Recordset
                MyRecordset.Open("Table1", MyConnect, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
                MyRecordset.AddNew()
                MyRecordset.Fields("NDC").Value = dc.Text
                MyRecordset.Update()
                MyRecordset.Close()
 
'mise à jour de mon datagridview associé
Form1.GetData(Form1.Table1dataAdapter.SelectCommand.CommandText)
 
Catch ex As Exception
                MsgBox(Err.Description)
End Try
End sub
 
End class
Concernant la ligne de commande de mise à jour du datagridview, je vous mets le code contenu dans le form1 :

Tout en haut :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Imports System.Data.OleDb
Puis :
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
Public Sub GetData(ByVal selectCommand As String)
 
        Try
            Call connection1()
            Dim connectionString1 As String = base1 & base3
 
            Me.Table1dataAdapter = New OleDbDataAdapter(selectCommand, connectionString1)
            Dim commandBuilder1 As New OleDbCommandBuilder(Me.Table1dataAdapter)
 
            Dim table1 As New DataTable()
            table1.Locale = System.Globalization.CultureInfo.InvariantCulture
 
            Me.Table1dataAdapter.Fill(table1)
 
        Catch ex As DataException
            MsgBox(Err.Description)
        End Try
J'espère que cela pourra vous aider .....

Edit 1 : De plus je remarque que dans VB, j'ai dans fenêtre exécution :
Une exception de première chance de type 'System.NullReferenceException' s'est produite dans Escale.exe
et une info-bulle :
La référence d'objet n'est pas défini à une instance d'un objet
Est-ce lié car je sais pas comment savoir à quelle ligne de mon programme çà bug .... et VB2010 me pointe pas la ligne qui pourrait générer cette erreur.....