|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |
|
Futur Membre du Club
![]() Inscription : août 2002 Messages : 41 ![]() |
Bonjour à tous,
Je rencontre un problème de construction d'une requête SQL de type "select". J'ai besoin d'effectuer une jointure "en cascade" de 3 tables "BRA", "LOT" et "FAC". Voici le texte de ma requête : Code :
select bra.bra_num, lot_period, fac.fac_ind from lot inner join fac on lot.lot_num = fac.lot_num inner join bra on fac.bra_num = bra.bra_num Le framework intercepte une erreur avec le message suivant : Citation:
Code :
select bra.bra_num, lot_period, fac.fac_ind from lot inner join fac on lot.lot_num = fac.lot_num, bra where fac.bra_num = bra.bra_num Quelqu'un saurait-il me dire ce qui cloche ? Merci beaucoup de votre aide. Bernard |
|
|
|
00
|
|
|
#2 |
|
Futur Membre du Club
![]() Inscription : août 2002 Messages : 41 ![]() |
Bonjour,
En fait, en cherchant un peu mieux sur ce forum, j'ai trouvé l'explication : En .Net - ce n'était pas nécessaire avant avec Delphi et les composants KadAO, ni dans le SQL "normal", à ce que je sache -, il faut des parenthèses. Cela donne : Code :
select bra.bra_num, lot_period, fac.fac_ind from ((lot inner join fac on lot.lot_num = fac.lot_num) inner join bra on fac.bra_num = bra.bra_num) Merci pour vos pistes... Cordialement Bernard |
|
|
10
|
|
|
#3 | ||
![]() ![]() ![]() ![]() Thomas LevesqueDéveloppeur .NET Inscription : février 2004 Messages : 17 770 ![]() |
Citation:
Citation:
En tous cas la syntaxe que tu indiques avec des parenthèses me semble assez bizarre, je n'ai jamais vu un seul SGBD qui ait besoin de ces parenthèses (en tous cas ce n'est pas la syntaxe SQL standard)
__________________
Pas de questions techniques par MP ! Le forum est là pour ça... |
||
|
10
|
|
|
#4 |
|
Futur Membre du Club
![]() Inscription : août 2002 Messages : 41 ![]() |
Bonjour Tomlev,
C'est presque par hasard que j'ai vu ta réponse, six mois après ! Je ne comprends pas ce qui s'est passé, ce n'est pas dans mes habitudes. Je te prie sincèrement de m'excuser pour ce "silence impoli". J'ai effectivement été surpris de la nécessité de ces parenthèses, mais je m'y suis fait ! J'ai remarqué d'ailleurs d'autres petites différences dans la syntaxe par rapport au composant pour Delphi, toujours pour attaquer une base Access. Encore merci et mille excuses 64bits ! |
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() François Chef de projet NTIC Inscription : janvier 2007 Messages : 6 544 ![]() |
Il aurait peut être fallu commencer par nous préciser qu'il s'agissait d'une base Access dont en effet le Sql est assez éloigné des standards.
__________________
Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça... Une réponse vous a aidé ? utiliser le bouton "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel |
|
|
00
|
|
|
#6 | |
|
Futur Membre du Club
![]() Inscription : août 2002 Messages : 41 ![]() |
Bluedeep :
Il s'agissait aussi d'une base Access dans le contexte du composant de Delphi, c'est pourquoi j'ai écris : Citation:
Cordialement |
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com