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 :

Problème avec une requète contenant deux tables et bindingsource


Sujet :

VB.NET

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 189
    Points : 87
    Points
    87
    Par défaut Problème avec une requète contenant deux tables et bindingsource
    En gros j'ai un panel dans lequel j'affiche des données venant de plusieurs tables (2 en l'occurence)


    J'ai d'abord testé en utilisant deux bindingsource en les remplissant l'un à la suite de l'autre dans mon code, mais pour une raison qui me parait assez obscur lorsque j'utilise cette technique, je vois les données de la première table se remplir dans mes label liées au bindingsource, puis tout se vide et les autres labels liées à l'autre table se remplisse et basta.

    Du cou j'ai voulu tester la méthode de sperot, en faisant une requête contenant mes deux tables et en concaténant ainsi mes champs adresse ce qui m'aurait grandement facilité la tache, mais là mon problème c'est qu'un bindingsource est lié qu'a une seule table donc je sèche complètement.

    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
     
            'on indique la requête à éxécuter
            strSql = "SELECT NumBeneficiaire, NomBeneficiaire, PrenomBeneficiaire, " & _
                     "AdresseBeneficiare+ ' ' + CPBeneficiaire + ' ' + VilleBeneficiaire as ligne_adresse_Bene, " & _
                     "TelephoneBeneficiaire, Portablebeneficiaire, NumInt, NomInt, PrenomInt, VilleInt, TelFixeInt, TelPortInt " & _
                     " From BENEFICIAIRES, INTERVENANTE"
     
            'on indique la table 
            table = "INTERVENANTE"
            'on vide le dataset
            ObjetDataSet.Clear()
            'on éxécute la fonction pour se connecter à la base et éxécuter la requête
            BD.ExecReq(strSql, table, ObjetDataSet)
            'On crèe une datatable à partir du dataset
            ObjetDataTable = ObjetDataSet.Tables(table)
            ' on lie le bindingsource à l'objet datatable
            BSIntervenante.DataSource = ObjetDataTable
    Peut on lier deux objets datatable à un seul bindingsource ou sinon comment pourrais-je faire pour arriver à mes fins

    merci pour votre aide

    @++
    dubidon

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 189
    Points : 87
    Points
    87
    Par défaut
    Bon finalement j'ai avancé un peu, j'ai réussi a comprendre quelques trucs.

    En gros il faut que j'utilise cette ligne pour chaque table de ma requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ObjetDataAdapter.Fill(dataset, table)
    et que ensuite je crèe un bindingsource pour chaque table dans mon datatable, du moins c'est ce que j'en ai ressorti de mes glanges par ci par là sur le web.

    Mais je ne peut pas encore vérifier totalement car j'ia un petit problème avec ma requète qui ne me permet pas d'aller plus loin que le premier objetadaptater.fill vu que je fais çà dans un try catch et qu'il chope une exception.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            strSql = "SELECT NumBeneficiaire, NomBeneficiaire, PrenomBeneficiaire, " & _
                     "AdresseBeneficiaire + ' ' + CPBeneficiaire + ' ' + VilleBeneficiaire as ligne_adresse_Bene, " & _
                     "TelephoneBeneficiaire, Portablebeneficiaire, NumInt, NomInt, PrenomInt, VilleInt, TelFixeInt, TelPortInt " & _
                     "From BENEFICIAIRES, INTERVENANTE"
    Lorsque je fais ainsi, j'ai le message d'erreur suivant :
    "Echec de la conversion de valeur varchar "blablabla" en type de données int"

    Par rapport au message d'erreur, çà vient de ma concaténation de mes 3 colonnes dans la requete.
    J'ai donc essayé en mettant des & à la place des +, mais là j'obtient ce message là :
    "Les types de données varchar et varchar sont incompatibles dans l'opérateur booleen And"

    du cou je ne sais pas quelle symbole utiliser, y'a t'il une astuce, est ce que la façon de faire n'est pas bonne ???


    d'avance merci pour votre aide

    @++
    dubidon

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    189
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 189
    Points : 87
    Points
    87
    Par défaut
    bon ben finalement c'etait bien un problème dans ma requete et grace au forum sql j'ai put trouver la réponse.

    Pour info en vb on utilise bien le + pour concaténer mais il falalit que je caste mon code postale pour pouvoir assembler le tout car mon code postale est en integer dans ma base.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AdresseBeneficiaire + CAST(CPBeneficiaire AS varchar(5)) + VilleBeneficiaire as ligne_adresse_Bene
    @++
    dubidon

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

Discussions similaires

  1. [MySQL-5.5] Problème avec une requête de mise à jour entre deux tables
    Par hermes1383 dans le forum Requêtes
    Réponses: 1
    Dernier message: 10/11/2014, 10h52
  2. Problème avec une bdd contenant beaucoup de tables
    Par M.Max dans le forum Windows Forms
    Réponses: 2
    Dernier message: 31/01/2010, 22h44
  3. Réponses: 1
    Dernier message: 11/06/2009, 23h39
  4. Problème avec une requête
    Par snoopy69 dans le forum Débuter
    Réponses: 2
    Dernier message: 20/01/2005, 12h39
  5. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29

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