Bonjour a vous, ayant des informations a stocker et à lire en base de donnée contenant des apostrophes, et suivant les conseils reçut et lu ici j'ai voulu créer une requete paramétré pour arriver a mes fins.

j'ai donc un code éxécuté a partir d'un bouton qui me charge un oledbcommand avec ma requete et mes données a insérer

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
33
34
35
36
37
38
 
  Private Sub BTNenrnvbene_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNenrnvbene.Click
 
        'on format la date correctement
        datee = Format(CType(Datebene.Text, Date), "dd/MM/yyyy")
 
        Dim command As OleDbCommand = New OleDbCommand("Insert into beneficiaires  " & _
                "(NomBeneficiaire, PrenomBeneficiaire, AdresseBeneficiaire, CPBeneficiaire, VilleBeneficiaire, TelephoneBeneficiaire, PortableBeneficiaire," & _
                "FrequenceBeneficiaire, DateContratBeneficiaire, FacturationBeneficiaire, ObservationsBeneficiaire )" & _
                "VALUES " & _
                "(:nom , :prenom, :adresse, :cp, :ville, :tel, :portable, :frequence, :date, :factu, :obs)")
        command.Parameters.Add(New OleDbParameter(":nom", OleDbType.VarChar, 50))
        command.Parameters(":nom").Value = TXTnvnombene.Text
        command.Parameters.Add(New OleDbParameter(":prenom", OleDbType.VarChar, 50))
        command.Parameters(":prenom").Value = TXTnvprenombene.Text
        command.Parameters.Add(New OleDbParameter(":adresse", OleDbType.VarChar, 50))
        command.Parameters(":adresse").Value = TXTnvadrbene.Text
        command.Parameters.Add(New OleDbParameter(":cp", OleDbType.Numeric, 6))
        command.Parameters(":cp").Value = TXTnvcpbene.Text
        command.Parameters.Add(New OleDbParameter(":ville", OleDbType.VarChar, 30))
        command.Parameters(":ville").Value = TXTnvvillebene.Text
        command.Parameters.Add(New OleDbParameter(":tel", OleDbType.Numeric, 10))
        command.Parameters(":tel").Value = TXTnvtelbene.Text
        command.Parameters.Add(New OleDbParameter(":portable", OleDbType.Numeric, 10))
        command.Parameters(":portable").Value = TXTnvportbene.Text
        command.Parameters.Add(New OleDbParameter(":frequence", OleDbType.VarChar, 15))
        command.Parameters(":frequence").Value = TXTnvfreqbene.Text
        command.Parameters.Add(New OleDbParameter(":date", OleDbType.Date, 15))
        command.Parameters(":date").Value = datee
        command.Parameters.Add(New OleDbParameter(":factu", OleDbType.VarChar, 15))
        command.Parameters(":factu").Value = TXTnvfactubene.Text
        command.Parameters.Add(New OleDbParameter(":obs", OleDbType.VarChar, 50))
        command.Parameters(":obs").Value = RTXTBnvbene.Text
 
        BD.ExecuterRequetecommand(command)
 
 
    End Sub
comme vous pouvez le constater ce code fait appel à une fonction qui doit s'occuper de la connexion a la base de donnée

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
 
    Public Sub ExecuterRequetecommand(ByVal command As OleDbCommand)
 
 
        Try
            'on crèe une connection
            ObjetConnection = New OleDbConnection
            'on donne à la propriété ConnectionString les paramètres de connexion
            ObjetConnection.ConnectionString = strConn
            'on ouvre la connexion
            ObjetConnection.Open()
            command.ExecuteNonQuery()
            'Catch ex As Exception
            'Throw ex
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        Finally
            If Not (ObjetConnection Is Nothing) Then ObjetConnection.Close()
        End Try
    End Sub
Cependant j'ai un message d'erreur au niveau de la connexion et je ne comprends pas du tout pourquoi, vu que ma chaine de connexion est déclaré en variable globale dans ma classe et que je l'utilisais jusqu'à présent pour pour la lecture ou l'update de mes tables.
De plus ne sachant plus ou chercher je me pose la question si c'est pas ma requête paramétré qui créerait des problèmes ou non.

D'avance merci pour l'aide que vous pourrez m'apporter

@++
dubidon