IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Erreur Type de données incompatible dans l'expression du critère. [Débutant]


Sujet :

VB.NET

  1. #1
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2013
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2013
    Messages : 121
    Points : 77
    Points
    77
    Par défaut Erreur Type de données incompatible dans l'expression du critère.
    Bonsoir les génies

    J'utilise Visual Studio 2012 et Access 2007. J'ai une table Certifs qui contient un champs DateCertifs de type date. En Ajoutant une Nouvelle Certifs tous fonctionne bien, pour la visualisation des Certifs j'utilise une DataGirdView et tous est OK. Je clique sur une ligne quelconque pour supprimer une Certifs présice je reçoit un message d'erreur " Type de données incompatible dans l'expression du critère. "
    Voici mon Code:

    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
       Private Sub DG_CellContentClick(sender As Object, e As DataGridViewCellEventArgs) Handles DG.CellContentClick
            Label2.Text = CDate(DG.CurrentRow.Cells(0).Value.ToString)
        End Sub
     
      Sub SuppCertifs()
                   Try
                    '---------------------   Suppression dans la Table Certifs   ---------------------------------
                    Cn.Open()
                    Cmd.Connection = Cn
                    Cmd.CommandType = CommandType.Text
                    Cmd.CommandText = "DELETE FROM Certifs WHERE DateCertifs = '" & Label2.Text & "'"
                    Cmd.ExecuteNonQuery()
                    Cn.Close()
                    '-------------------   Re-Afficher DataGrid après Ajout dan la Table Certifs   ------------------------
                    Ds.Clear() : Dt.Clear()
                    AfficheCertifs()
                    Catch ex As Exception
                       MsgBox(ex.Message)
                       Cn.Close()
                    End Try
        End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Si le champ DateCertifs est de type Date, il faudra utiliser les # au lieu de ' qui est pour les données de type texte.

    Philippe

  3. #3
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2013
    Messages
    121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2013
    Messages : 121
    Points : 77
    Points
    77
    Par défaut
    Merci Philipe Problème résolut

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Points : 5 100
    Points
    5 100
    Par défaut
    Bonjour,

    Il est fortement recommandé d'utiliser les requêtes paramétrées. Voir Tuto ou Faq.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/04/2015, 12h20
  2. Réponses: 4
    Dernier message: 29/04/2010, 12h56
  3. Réponses: 5
    Dernier message: 31/08/2007, 13h01
  4. Réponses: 2
    Dernier message: 13/06/2006, 08h47
  5. Réponses: 3
    Dernier message: 22/05/2006, 19h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo