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 :

requete SQL table join


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut requete SQL table join
    slt

    j'ai une requete avec un data grid view s qui marche bien

    mais avec un requete ou il y a 2 table join je ne sais pas quoi mettre dans

    Vtable = DtSet.Tables("ordre") <=== ordre n'est pas bon apparment

    meric de votre aide

    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
    22
    23
    24
    25
    26
    27
    28
    Sub resumer()
            Dim Connection As New OleDb.OleDbConnection()
            Dim AdapTContact As OleDb.OleDbDataAdapter
            Dim DtSet As New DataSet()
            Dim Sql As String
     
     
            'ouverture de la connection
            Connection.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & "data source=D:\Documents and Settings\sa_testmcore\Desktop\configuration produit.mdb;"
            Connection.Open()
     
            Sql = "SELECT ordre.[N°], ordre.ordre, ordre.poste, ordre.etat, ordre.datesortie, ordre.dateentree, ordre.[jeton-baie], ordre.[jeton-chassis], ordre.produit, ordre.code, ordre.commentaire, poste.type FROM (ordre INNER JOIN poste ON ordre.poste = poste.freu) ORDER BY ordre.[N°], poste.type"
            'definition de la requete
            'definition du DataAdapter
            AdapTContact = New OleDbDataAdapter(Sql, Connection)
     
            ' remplissage du dataset
            AdapTContact.Fill(DtSet)
     
            'Fermeture de la connection
            Connection.Close()
     
            'affichage dans un  datagridview
            Dim Vtable As DataTable
            Vtable = DtSet.Tables("ordre")
            DataGridView1.DataSource = Vtable
     
        End Sub

    bonne journée

    merci

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 793
    Par défaut
    Met un point d'arret apres avoir ajouté les données dans le dataset et regarde le nom de la table avec un espion du genre :
    ou alors remplaces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Vtable = DtSet.Tables("ordre")
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Vtable = DtSet.Tables(0)

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ou encore mieux, tu crées explicitement la table en lui donnant un nom :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim table As New DataTable("ordre")
    DtSet.Tables.Add(table)
    AdapTContact.Fill(table)

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut ca marche oui et non :(
    bon j'ai reproduit ma macro chez moi

    pas de souci c'est super ca marche

    mais quand il est intégré dans mon programme d'origine

    j'ai une erreur

    a la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vtable = DtSet.Tables(0)
    Unable to cast object of type 'System.Data.DataTable' to type 'Microsoft.Office.Interop.Excel.DataTable'.
    je precice que cette macro n'est pas imbriquer dans une autre fonction

    juste un bouton avec avec un datagridview

    merci de votre aide par avance

  5. #5
    Membre Expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Par défaut
    Déclare vtable explicitement en system.data.datatable et pas en datatable. A cause d'un using, probablement, il considère que datatable est excel.datatable.

  6. #6
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    124
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 124
    Par défaut
    super

    c'est nickel

    merci a vous tous pour cette aide précieuse

    ++

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

Discussions similaires

  1. Requete sql table de jointure dans datagried
    Par MkcookieFIFO dans le forum Windows Forms
    Réponses: 6
    Dernier message: 16/06/2010, 15h34
  2. REQUET SQL LEFT JOIN
    Par cLaSic dans le forum Requêtes
    Réponses: 5
    Dernier message: 28/04/2009, 12h38
  3. [MySQL] Requete SQL INNER JOIN
    Par davidb1967 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 27/04/2009, 17h42
  4. Requete SQL (Table PARADOX) et LCK...
    Par asenaici dans le forum Bases de données
    Réponses: 8
    Dernier message: 09/11/2004, 12h00

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