Table déconnecté du reste du graphique de jointure [Résolu/Fermé]

Signaler
Messages postés
42
Date d'inscription
jeudi 4 décembre 2008
Statut
Membre
Dernière intervention
28 janvier 2020
-
Messages postés
42
Date d'inscription
jeudi 4 décembre 2008
Statut
Membre
Dernière intervention
28 janvier 2020
-
Bonjour,
je me demandais une chose, j'utilise sqldeveloper et oracle , pour mes requêtes sql, il m'arrive de corriger et d'améliorer des requêtes qui font facilement 80 voir 90 lignes.

Lorsque je créé ou modifie certains requêtes, j'ai parfois un message " table 1 est deconnecté du reste du graphique de jointure " sur sqldeveloper.


select ......
from table1
inner join table2 t2 on t2.id = t1.identifiant //le message survient parfois ici sur sqldev : table 2 est deconnecté du reste de graphique de jointure et c'est souligné en orange
inner join table3 t3 on t3.id = t2.fkId
inner join table4 t4 .......
.................................

mais pourtant ça à l'air de fonctionner.
Parfois quand je modifie les inner join, le soulignement disparait

Sauriez vous m'en dire plus sur ce message ? Cela veut il dire que la jointure est mauvaise ?

Merci à vous

1 réponse

Messages postés
15119
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
13 avril 2021
828
bonsoir,
il semble que, le plus souvent, ce soit un avertissement erroné. il essaie de te prévenir que ta table ne fait pas vraiment partie de la jointure.
Messages postés
42
Date d'inscription
jeudi 4 décembre 2008
Statut
Membre
Dernière intervention
28 janvier 2020

merci,
un avertissement erroné c'est à dire ? donc en gros il est préférable de modifier la jointure ?
Pourtant "logiquement" ça va car je relie les bon champs ensemble , donc parfois mieux vaut pas en tenir compte ?
Messages postés
42
Date d'inscription
jeudi 4 décembre 2008
Statut
Membre
Dernière intervention
28 janvier 2020

Un exemple tout bete quand j'ai ce morceau de code :

(NVL(
(
SELECT (NVL(td1.tpstravail,0))
FROM dossierEmp_2 t41
INNER JOIN dossierEmp_1 t42 ON t42.cid =t41.cidrefDossierEmp_2

WHERE t42.cidrefDossierEmp=162

),0) ) AS tpstravail_2017,

aucun message mais si je met:


(NVL(
(
SELECT (NVL(td1.tpstravail,0))
FROM dossierEmp_2 t41
INNER JOIN dossierEmp_1 t42 ON t42.cid =t41.cidrefDossierEmp_2

inner join table1 t1 on tc1.id_1 = t42.c210_idreftc1
inner join table2 t2 on t2.Idt2_idreftc1 = tc1.id_1
WHERE t42.cidrefDossierEmp=162

),0) ) AS tpstravail_2017,


ça me met " ORA-00942: Table ou vue inexistante " rien qu'en rajoutant 2 jointures qui sont corrects pourtant..
Messages postés
15119
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
13 avril 2021
828 >
Messages postés
42
Date d'inscription
jeudi 4 décembre 2008
Statut
Membre
Dernière intervention
28 janvier 2020

"Table ou vue inexistante": ce n'est pas le même message d'avertissement qu'au départ.
de quoi parlons-nous?
Messages postés
42
Date d'inscription
jeudi 4 décembre 2008
Statut
Membre
Dernière intervention
28 janvier 2020

oui
en fait j'avais fait une modification, je n'avais plus le problème du message " deconnecté du reste graphique de jointure mais j'avais un autre message " table ou vue inexistante mais j'ai résolu le soucis, un grand merci à toi :)