Requete SELECT * sur plusieurs tables

Résolu
Le grand Zorro Messages postés 50 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 12 mai 2008 - 3 mai 2008 à 10:43
wacssine Messages postés 59 Date d'inscription samedi 13 octobre 2007 Statut Membre Dernière intervention 1 décembre 2013 - 18 juil. 2008 à 13:47
bonjour,

J'ai une base de données que j'exploite avec une appli en VB.NET.
Lorsque j'utilise une requête genre " SELECT * FROM t_MaTable;" tout fonctionne parfaitement (avec DataSet, DataAdapter..., en objet Oledb et non pas sql).
Mais lorsque je veux sélectionner tous les éléments de deux tables, le DataSet ne se rempli qu'avec la dernière table mentionné dans la requête :
SELECT * FROM t_MaTable1 , t_MaTable2;"
Même résultat si j'inclus dans ma requête les relations avec INNER JOIN..
N'étant pas spécialiste SQL je me dis que quelquechose cloche dans ma requête.

Quelqu'un a-t-il une idée pour résoudre mon problème ? Merci d'avance

7 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
3 mai 2008 à 11:05
Salut,

Je pense qu'il va te falloir 2 Requête avec un seul RecordSet...je pense...

A+
Exploreur

 Linux a un noyau, Windows un pépin
3
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
3 mai 2008 à 14:35
Salut ,
tu énumères les champs à selectionner, au lieu de *

//Sans jointure
SELECT Table1.Chp11, Table1.Chp12, Table2.Chp21, Table2.Chp22
FROM Table1, Table2;

//Avec jointure
SELECT Table1.Chp11, Table1.Chp12, Table2.Chp21, Table2.Chp22
FROM Table1 INNER JOIN Chp11 ON Table1.Chp11 = Table2.Chp11;
1
Le grand Zorro Messages postés 50 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 12 mai 2008
3 mai 2008 à 11:14
C'est ce que j'utilise pour palier mon soucis Je rempli deux DataTable différents pour récupéré mes données et je lance deux requêtes. Mais cela ne facilite pas la programmation de mon affaire.
0
yassinebennani Messages postés 249 Date d'inscription samedi 13 octobre 2007 Statut Membre Dernière intervention 2 mai 2014
3 mai 2008 à 13:26
Tu peux utiliser un SELECT INTO cette requête crée une table temp en sortie.

SELECT * INTO table_temp From table1, table2;
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bernardo67 Messages postés 41 Date d'inscription dimanche 28 mai 2006 Statut Membre Dernière intervention 20 janvier 2009
3 mai 2008 à 18:37
Salut,

Si ton application ne va pas trop loin dans l'exploitation d'une base sql, tu peux aussi passer par l'outil graphique de VS en glissant tes éléments. 
Toutes les tables sont alors chargées dans le même dataset.
0
Le grand Zorro Messages postés 50 Date d'inscription mercredi 4 août 2004 Statut Membre Dernière intervention 12 mai 2008
3 mai 2008 à 22:28
En fait en potassant des bouquins sur le sujets, il s'avère que .. c'est plutôt complexe, on sy' prend en plusieurs fois pour récupérer les données dans plusieurs DataTable d'un même DataSet. L'idéal par la suite est de créer les jointures avec des DataRelation.
(Je travaille en mode déconnecté.. )
Merci pour les pistes
0
wacssine Messages postés 59 Date d'inscription samedi 13 octobre 2007 Statut Membre Dernière intervention 1 décembre 2013
18 juil. 2008 à 13:47
Il faut faire une joinyure entre les deux tables
0
Rejoignez-nous