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 :

Le cast spécifié n'est pas valide


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mars 2006
    Messages
    492
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 492
    Par défaut Le cast spécifié n'est pas valide
    Bonjour,

    J'ai un énorme problem de conversion, j'ai fais comme suit :
    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
     
     
    this.oleDbDataAdapter1.SelectCommand.CommandText = "select T001.CONTRAT,sum(PX) as PX,sum(PX * DISTANCE  )as PKT , from t001,appareils ,  group by T001.CONTRAT";
    dataSet3.Clear();
    oleDbDataAdapter1.Fill(this.dataSet3.Tables["T001"]).ToString();
     
                    DataTable dataTable77 = dataSet3.Tables[0];
                    if (dataTable77.Rows.Count != 0)
                    {
                        try
                        {
     
                            t0 = (string)dataSet3.Tables["T001"].Rows[0]["contrat"];
                            t1 = (int)dataSet3.Tables["T001"].Rows[0]["PX"];
     
                           }
                        catch (System.Data.OleDb.OleDbException exp)
                        { MessageBox.Show(exp.ToString()); }
                      }
    Le 1er if test si le resultat de la requet n'est pas NULL, mais j'ai pas pu faire le test du type dataSet3.Tables["TAL001"].Rows[0]["contrat"] et dataSet3.Tables["TAL001"].Rows[0]["PAX"], parceque une fois sa marche et l'autre fois il me met Le cast spécifier n'est pas valide.
    j'ai ce problem uniquement avec les double , (je croix qu'il retourne NULL ou 0),j'ai cherché pour le declarer en tant que réel mais j'ai pas trouvé le type réel,merci infinient

  2. #2
    Membre émérite
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Par défaut
    Salut,

    Avant tout, cela veut dire quoi le toString à la fin de cette ligne ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    oleDbDataAdapter1.Fill(this.dataSet3.Tables["T001"]).ToString();
    Ensuite, pour voir s'il y a incompatibilité de type, serait-il possible de savoir qu'elle sont les types de "t0" et "t1" ?

    Quels sont les types SQL de tes colonnes "contrat" et "PX" (ou "PAX) ?

  3. #3
    Membre averti
    Inscrit en
    Août 2006
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 31
    Par défaut
    Sans vouloir être hors sujet, si je peux me permettre de te donner un petit conseil : tu n'as pas fini d'avoir des soucis si tu continues à nommer tes variables "datatable77", "dataset36", ou encore t1 etc...

    Le minimum vital, pour les noms de tes variables locales, c'est au moins que leur nom laisse deviner leur type (je parle pour "t1" et "t0").

    Si tu te repenches sur ton appli dans quelques mois, tu comprendras ce que je veux dire...

    Sinon, pour ton problème, il faudrait en effet qu'on connaisse les types censés être retournés par ta requête (laquelle possède une virgule de trop avant le "from", ou certains SGBDR l'autorisent, ou je dis une connerie??)

  4. #4
    Membre Expert
    Avatar de olsimare
    Inscrit en
    Décembre 2006
    Messages
    1 183
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 183
    Par défaut
    Bonjour.

    Citation Envoyé par popachubby Voir le message
    Sans vouloir être hors sujet, si je peux me permettre de te donner un petit conseil : tu n'as pas fini d'avoir des soucis si tu continues à nommer tes variables "datatable77", "dataset36", ou encore t1 etc...
    Entiérement d'accord...

    Et là sans les type de t0 et t1, ça va être dur de comprendre ton probléme.

    Cdt.

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/04/2011, 10h22
  2. Message d'erreur: Le cast spécifié n'est pas valide.
    Par giscard85 dans le forum ASP.NET MVC
    Réponses: 1
    Dernier message: 30/03/2011, 11h10
  3. Erreur "Le cast spécifié n'est pas valide"
    Par GriffinK dans le forum VB.NET
    Réponses: 4
    Dernier message: 28/04/2008, 10h46
  4. Le cast spécifié n'est pas valide
    Par illegalsene dans le forum VB.NET
    Réponses: 3
    Dernier message: 11/03/2008, 14h59
  5. Problème : cast spécifié n'est pas valide.
    Par paradeofphp dans le forum ASP.NET
    Réponses: 13
    Dernier message: 30/08/2007, 18h10

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