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

Windows Forms Discussion :

type de données incompatibles dans l'expression du critère


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 31
    Par défaut type de données incompatibles dans l'expression du critère
    bonjour,
    type de données incompatibles dans l'expression du critère
    voici l'erreur qui est généré lorsque je tante de remplir une table avec des données d'un datagridview ayant les même champs que la table.
    voici un bout de mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    For i = 0 To Me.DataGridView2.Rows.Count - 2
                    Enreg = Me.BdUAreçuDataSet.Tables("ENCAISSEMENT").NewRow()
                    For j = 0 To Me.BdUAreçuDataSet.Tables("ENCAISSEMENT").Columns.Count - 1
       Enreg(j) = Me.DataGridView2.Item(j, i).Value
                    Next
                    Me.BdUAreçuDataSet.Tables("ENCAISSEMENT").Rows.Add(Enreg)
                    Me.ENCAISSEMENTBindingSource.EndEdit()
     Next
                Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet.ENCAISSEMENT)
    je comprend vraiment pas pourquoi j'ai cette erreur.
    Mon datagridview et mon dataTable ENCAISSEMENT sont bien rempli. mais les données de mon dataTable ne peuvent rentrer dans ma base de données a cause de l'erreure cité plus haut.

  2. #2
    Membre confirmé Avatar de Miles Raymond
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 189
    Par défaut
    Je peux me tromper mais ta ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet.ENCAISSEMENT)
    Ca ne devrait pas plutôt être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet.Tables("ENCAISSEMENT"))
    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet,"ENCAISSEMENT")
    Remarque je me plante certainement. Concernant tes variables, ça fait bizzare de voir l'une d'elle nommée "Aperçu". Mais sinon l'erreur intervient sur quelle ligne ? Et à quoi ressemble ton updatecommand ?

  3. #3
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 31
    Par défaut erreur
    Citation Envoyé par Miles Raymond Voir le message
    Je peux me tromper mais ta ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet.ENCAISSEMENT)
    Ca ne devrait pas plutôt être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet.Tables("ENCAISSEMENT"))
    Ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ENCAISSEMENTTableAdapter.Update(Me.BdUAreçuDataSet,"ENCAISSEMENT")
    Remarque je me plante certainement. Concernant tes variables, ça fait bizzare de voir l'une d'elle nommée "Aperçu". Mais sinon l'erreur intervient sur quelle ligne ? Et à quoi ressemble ton updatecommand ?
    Il se trouve que j'ai fais une connection directe avec une base de données access, à l'aide des assistants donc il ya plusieurs commandes qui sont générés diretement par windows. Donc je n'ais pas eu à créer un Updatecommand.
    NB
    "mon application marche avec deux base de données: une BD AS400 que j'ai connecté par code et d'où j'importe des données (dans le datagridview),
    et une BD access que j'ai connecté à l'aide des assistants et dans laquelle je fais des enregistrements"

  4. #4
    Membre confirmé Avatar de Miles Raymond
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 189
    Par défaut
    Bon alors lorsque c'est du CommandBuilder, je peux pas vraiment t'aider. Mais sur le sujet, dans la FAQ Visual Basic developpez.com voilà ce qu'on dit à propos de cette exception :

    Citation Envoyé par Le grand gourou 'développez-com'
    Cette erreur a lieu lorsque la valeur d'un critère dans la clause WHERE d'une requête Sql est mal écrite. Les valeurs spécifiées pour des champs de type texte doivent être entre apostrophes, et pour les champs de type date, entre "#".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM documents WHERE ((titre like 'how-to%') AND (creation>#01/01/2002#) AND (auteur=10))

  5. #5
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 31
    Par défaut toujours rien
    Citation Envoyé par Miles Raymond Voir le message
    Bon alors lorsque c'est du CommandBuilder, je peux pas vraiment t'aider. Mais sur le sujet, dans la FAQ Visual Basic developpez.com voilà ce qu'on dit à propos de cette exception :
    dans ma requête il n'ya pas de clause where .c'est une requête simple qui récupère ts les champs de ma table ENCAISSEMENT. J'utilise la méthode fill pour charger le dataset. Mais le update pour chargé la table dans la base de donnée ne marche pas.
    toujours la même erreure.

Discussions similaires

  1. Requête: type de donnée incompatible dans l'expression du critère
    Par abambad dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 31/10/2007, 15h48
  2. Réponses: 5
    Dernier message: 31/08/2007, 13h01
  3. Réponses: 8
    Dernier message: 20/06/2007, 14h38
  4. Réponses: 7
    Dernier message: 22/08/2006, 17h10
  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