Requete insert en vb net

floriaan60 Messages postés 3 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 4 juin 2008 - 21 mai 2008 à 09:30
lil_adriano Messages postés 42 Date d'inscription vendredi 26 janvier 2007 Statut Membre Dernière intervention 16 juin 2008 - 5 juin 2008 à 15:03
bonjour,
j'ai une erreur dans ma requete, mais je ne vois pas pourquoi
C'est une erreur d'excpetion: "erreur requete access: type de données incompatible dans l'expression du critere"

voici le shema de la table:
Encaissement

lib: Texte

nomSal: Texte

DateEnc: Date/Heure

MTEnc: monétaire

Regle: monétaire

voici mon code:
Imports System.Data.OleDb

Public Class frm_ajoutEnc

    Private Sub btn_enr_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_enr.Click
        Dim maConnexion As OleDbConnection
        Dim maCommande As OleDbCommand
        Dim strConnect As String
        Dim strSql As String

        Dim nom As String
        Dim dat As Date
        Dim montant, regle As Decimal

        'recupération et cast des données du formulaire
        nom = txt_nom.Text
        dat = txt_date.Text
        montant = Convert.ToDecimal(txt_MT.Text)
        regle = Convert.ToDecimal(txt_reg.Text)

        'mise a jour de la base de données
        Try
            'connexion a la base
            strConnect = "Provider='Microsoft.Jet.OLEDB.4.0';Data Source='C:\Documents and Settings\fdefrocourt\Bureau\Caisse\bdd_agroform.mdb';User ID=Admin;Password=;"
            maConnexion = New OleDbConnection(strConnect)
            strSql = "INSERT INTO Encaissement VALUES('Repas','" & dat & "', " & Double.Parse(montant) & ",'" & nom & "'," & Double.Parse(regle) & ")"
            'Creation de l'objet contenant la req puis ouverture de la bdd
            maCommande = New OleDbCommand(strSql, maConnexion)
            maConnexion.Open()
            'execution de la requete
            maCommande.ExecuteNonQuery()
            'fermeture de la connexion
            maConnexion.Close()

            MsgBox("Employé ajouté")

            txt_nom.Clear()
            txt_date.Clear()
            txt_MT.Clear()
            txt_reg.Clear()

        Catch err As System.Data.OleDb.OleDbException
            MessageBox.Show("ERREUR requête ACCESS:" + err.Message)
        Catch err As System.InvalidOperationException
            MessageBox.Show("ERREUR:" + err.Message)
        Catch err As Exception
            MessageBox.Show("ERREUR GRAVE:" + err.Message)
        End Try
    End Sub
End Class

4 réponses

floriaan60 Messages postés 3 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 4 juin 2008
21 mai 2008 à 10:24
résolu

flo
0
lil_adriano Messages postés 42 Date d'inscription vendredi 26 janvier 2007 Statut Membre Dernière intervention 16 juin 2008
3 juin 2008 à 20:02
Slt flo tu peu me dire comment tu as resolu ton probleme car j'ai le même probleme.
stp merci!
0
floriaan60 Messages postés 3 Date d'inscription mercredi 21 mai 2008 Statut Membre Dernière intervention 4 juin 2008
4 juin 2008 à 13:56
slt.
regarde le type de tes champs dans ton code et dans ta base
essay de les parser.

flo
0
lil_adriano Messages postés 42 Date d'inscription vendredi 26 janvier 2007 Statut Membre Dernière intervention 16 juin 2008
5 juin 2008 à 15:03
merci j'ai trouve la soluce!!

lil
0
Rejoignez-nous