Bonjour, j'appel à votre aide car j'ai un bug dont je ne vois pas pourquoi .
J'utilise VB2010, access 2010
J'ai une classe AccessConnexion (qui me permet de me connecter à ma base Access)
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
 
Public Class AccessConnexion
    'attribut chemin de la base
    Private chemin As String = My.Application.Info.DirectoryPath & "\base.accdb"
    'Attribut connexion unique à une source de données
    Private cnx As OleDb.OleDbConnection = Nothing
    'Attribut chaine de connection (fournisseur d'accès aux données + chemin)
    Private cnxstr As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & chemin & ";"
Public Sub Open_connexion()
        Try
            'test si la connexion n'est pas déjà ouverte
            'If cnx.State <> 1 Then
            cnx = New OleDb.OleDbConnection
            cnx.ConnectionString = cnxstr
            cnx.Open()
            'End If
        Catch ex As Exception
            Throw New Exception("Erreur d'ouverture connexion" & Environment.NewLine & ex.Message)
        End Try
    End Sub
end class
et une classe AccesUsers (qui permet enfin je voudrais bien qui ajoute un utilisateur à la base)
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
 
'ajout référence vers BEL
Imports BEL
 
Public Class AccessUsers : Inherits AccessConnexion
 
    'Enregistrement de l'utilisateur dans la base
    Public Sub Ajouter(ByVal NewUser As USER)
        Dim ac As New AccessConnexion
        Dim cmd As New OleDb.OleDbCommand
        ac.Open_connexion()
        cmd.CommandType = CommandType.Text
        cmd.CommandText = "INSERT INTO USERS (LOGIN, MDP, QUESTION, REPONSE) VALUES ('" & NewUser.Login & "','" & NewUser.Password & "','" & NewUser.Question & "','" & NewUser.Reponse & "')"
        'ExecuteNonQuery*: la propriété Connection n'a pas été initialisée.
        cmd.ExecuteNonQuery()
    End Sub
End Class
C'est dans cette classe que l'erreur se produit au moment de cmd.ExecuteNonQuery.