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

C# Discussion :

Lire un dataTable contenat trois requêtes


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 126
    Par défaut Lire un dataTable contenat trois requêtes
    Bonjour,
    J'ai une procédure stockées qui contient trois requêtes (select1, select2 et select3).

    après avoir fait appel à cette procédure dans un DataTable, je n'arrive pas à récupérer les ligne de la 2éme et la 3éme requête, il ne connaît que les colonnes de la première requête.

    Merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Comment remplis tu ton datatable ?

    A priori, si ton datatable ne contient que les éléments de ta première requête, c'est que tu ne le remplis qu'avec ces éléments.

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 126
    Par défaut
    Citation Envoyé par calagan99 Voir le message
    Comment remplis tu ton datatable ?

    A priori, si ton datatable ne contient que les éléments de ta première requête, c'est que tu ne le remplis qu'avec ces éléments.
    J'ai bien précisé que le dataTable est remplis en appelant une procédure stockées qui contient 3 requêtes de sélection différentes.

    après avoir remplir le dataTable, je trouve que les ligne est les colonnes de la première requêtes de sélection.

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 126
    Par défaut
    Citation Envoyé par calagan99 Voir le message
    Comment remplis tu ton datatable ?

    A priori, si ton datatable ne contient que les éléments de ta première requête, c'est que tu ne le remplis qu'avec ces éléments.
    voilà la une partie de 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
    18
    19
    20
    21
     SqlParameter pLgId = new SqlParameter("@P_LGID", SqlDbType.VarChar, 3);
                    pLgId.Value = langUser;
     
                    SqlParameter pSiteId = new SqlParameter("@P_SITEID", SqlDbType.VarChar, 10);
                    pSiteId.Value = codeSite;
                    /*ma procedure stockée: getHeirarchie (select * from tab1
                                                                          select * from tab2
                                                                          select * from tab3)
                        ce n'est pas les même colonnes mais il y a une relation entre 
    eux*/
                    sqlCom = new SqlCommand("dbo.getHeirarchie", sqlConn);
                    sqlCom.CommandType = CommandType.StoredProcedure;
                    sqlCom.Parameters.Add(pLgId);
                    sqlCom.Parameters.Add(pSiteId);
                    sqlCom.Connection.Open();
     
                    result = new DataTable();
                    result.Locale = Thread.CurrentThread.CurrentCulture;
                    adapter = new SqlDataAdapter(sqlCom);
                    adapter.Fill(result);
                     // result.rows.count est égale à 1

  5. #5
    Modérateur

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2007
    Messages
    1 996
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 996
    Par défaut
    Ta requête renvoie trois jeux de résultats.
    Un datatable n'en stockera qu'un.
    Deux solutions :
    - un Join entre tes requêtes pour ne renvoyer qu'un jeu de résultats.
    - un Dataset, 3 datatables, chaque jeu de résultats dans un datatable, les datatables dans le dataset

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

Discussions similaires

  1. [MySQL] Lire le résultat d'une requête comportant une clause GROUP BY
    Par lenstoi dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 15/08/2007, 19h08
  2. Lenteur datatable car double requête
    Par davdou dans le forum JSF
    Réponses: 3
    Dernier message: 09/07/2007, 10h20
  3. Comment lire le résultat d'une requête SQL?
    Par cmako dans le forum JDBC
    Réponses: 2
    Dernier message: 22/05/2007, 17h36
  4. [MySQL] trois requêtes identiques avec différents résultats
    Par xenos dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 13/04/2007, 14h23
  5. comment lire un datatable
    Par visiorach dans le forum C#
    Réponses: 1
    Dernier message: 22/03/2007, 14h39

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