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 :

connexion du datagridview avec 2 tables SQL


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2011
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 267
    Par défaut connexion du datagridview avec 2 tables SQL
    Bonjour j'ai un datagridview qui contient 5 colonnes.Et j'ai importer des données pour les 4 1er colonnes a partir de la table FACTURELIGNE,et la 5eme colonne je veux importer d'une autre table qu'est la table ARTICLE.j'ai essayé avec le code ci dessous mais ca ne marche pas.
    Ce message d'erreur ( Invalid column name 'SQP184') est affiché sur la partie en rouge du code source qui contient 'SQP184' d'ou arrive le message d'erreur.

    merci de m'aider

    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
     Private con As New SqlConnection("Data Source=MTIRI-PC; Initial Catalog=base-ets-mtiri;integrated security=true; ")
    Dim dst As New DataSet
                    
                    Dim adpt As New SqlDataAdapter("select * from FACTURELIGNE where LREF=" & Me.txtCustomComplete.Text & "  ", con)
                    adpt.Fill(dst, "table")
                    Dim k As Integer
                    Dim i As Integer = 0
                    For k = 0 To dst.Tables("table").Rows.Count - 1
                        Dg.Rows(i).Cells(1).Value = dst.Tables("table").Rows(k).Item(16) & vbCrLf
                        Dg.Rows(i).Cells(3).Value = dst.Tables("table").Rows(k).Item(13) & vbCrLf
                        Dg.Rows(i).Cells(0).Value = dst.Tables("table").Rows(k).Item(8) & vbCrLf
                        Dg.Rows(i).Cells(2).Value = dst.Tables("table").Rows(k).Item(12) & vbCrLf
                        i = i + 1
                    Next
    
    '*********la deuxième table **************
                    Dim dstart As New DataSet
                    Dim adptart As New SqlDataAdapter("select * from ARTICLE where ART=" & Me.Dg.Rows(0).Cells(0).Value & " ", con)
                    adptart.Fill(dstart, "tableart")
                    For k = 0 To dstart.Tables("tableart").Rows.Count - 1
                        Dg.Rows(i).Cells(4).Value = dstart.Tables("tableart").Rows(k).Item(3) & vbCrLf
                        i = i + 1
                    Next
    
                End If
            End If
        End Sub

  2. #2
    Membre éprouvé Avatar de Anklor
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2011
    Messages : 76
    Par défaut
    Quelles sont les champs de tes 2 tables, car là, je comprends pas pourquoi tu affiche ligne par ligne tes tables, alors que la propriété "DataSource" fait tout ça très bien.

  3. #3
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2011
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 267
    Par défaut
    Citation Envoyé par Anklor Voir le message
    Quelles sont les champs de tes 2 tables, car là, je comprends pas pourquoi tu affiche ligne par ligne tes tables, alors que la propriété "DataSource" fait tout ça très bien.
    J'ai la table FACTURELIGNE et ARTICLE.
    Les colonnes 0,1,2,3 du datagridview recoit les données a partir du FACTURELIGNE
    et la colonne 4 recoit données a partir du ARTICLE.
    et je t'informe que l'importation a partir de la table FACTURELIGNE marche bien mais la 2eme non.

  4. #4
    Membre éprouvé Avatar de Anklor
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2011
    Messages : 76
    Par défaut
    oui mais les colonnes ??
    Je remarque que bien souvent, la requête est mal construite et que les personnes s'acharnent, par la suite, à modifier tant bien que mal le résultat.

    Donc il faudrait expliquer clairement se que tu désires effectuer, pourquoi fusionner 2 parties de tables etc ...

  5. #5
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2011
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 267
    Par défaut
    Citation Envoyé par Anklor Voir le message
    oui mais les colonnes ??
    Je remarque que bien souvent, la requête est mal construite et que les personnes s'acharnent, par la suite, à modifier tant bien que mal le résultat.

    Donc il faudrait expliquer clairement se que tu désires effectuer, pourquoi fusionner 2 parties de tables etc ...
    Parce que je suis en train de construire une table facture.donc pour créer une facture il faut utiliser la table ARTICLE mais pour consulter un facture déja enregistré il faut utiliser la table FACTURELIGNE

  6. #6
    Membre éprouvé Avatar de Anklor
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2011
    Messages : 76
    Par défaut
    je dirais déjà qu'il te manque les petits guillemets dans ta requête

    "SELECT * FROM ARTICLE WHERE ART=" & Me.Dg.Rows(0).Cells(0).Value & " " , de + pourquoi cette espace ??

    "SELECT * FROM ARTICLE WHERE ART='" & Me.Dg.Rows(0).Cells(0).Value & "'"

    cela marche pour ta première requête car "Me.txtCustomComplete.Text" doit retourner un nombre

  7. #7
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2011
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 267
    Par défaut
    Merci Anklor mais votre proposition n'affiche aucun erreur et aucune résultat

  8. #8
    Membre éprouvé Avatar de Anklor
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2011
    Messages : 76
    Par défaut
    On a corrigé l'erreur déjà.
    Mais comme je te le disais, ton algorithme est vraiment mal construit

    Regarde sur msdn pour la propriété datasource.
    http://msdn.microsoft.com/fr-fr/libr...atasource.aspx

  9. #9
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Pour ajouter aux champs de LIGNEFACTURE des Champs de la table ARTICLE, on n'a pas besoin de 2 tables ni de 2 dataAadapter.
    Une seule table suffira, simplement en modifiant la commande SQL select grâce à un OUTER JOIN avec la table ARTICLE.

  10. #10
    Membre éprouvé Avatar de Anklor
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2011
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2011
    Messages : 76

Discussions similaires

  1. [Débutant] Mettre a jour une table SQL server avec un datagridview
    Par gilles_906 dans le forum VB.NET
    Réponses: 1
    Dernier message: 20/05/2015, 02h53
  2. Comment charger un datagridview avec 2 tables différentes ?
    Par ozeon dans le forum Entity Framework
    Réponses: 2
    Dernier message: 13/06/2012, 10h11
  3. [Vxi3] Problème avec une table SQL SERVER 2005
    Par ahmed_amine dans le forum Designer
    Réponses: 2
    Dernier message: 14/06/2011, 18h10
  4. supprimer une ligne d'un datagridview avec une requêtte sql
    Par Paradisma dans le forum Windows Forms
    Réponses: 4
    Dernier message: 21/09/2010, 00h59
  5. Comment je peux changer nom de 'Table' avec la phrase sql
    Par YEK dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 01/10/2004, 08h38

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