Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/12/2010, 12h27   #1
Invité régulier
 
Inscription : novembre 2007
Messages : 16
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 16
Points : 6
Points : 6
Par défaut Erreur ORA-00904 identificateur nopn valide, alors qu'il existe bien

Voici la requête que j'utilise :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
SELECT count(1) 
FROM 
(
SELECT SDH.PRG_TRONCON_OPERATION.ID_PRG_TRONCON_OPERATION,
SDH.PRG_TRONCON_OPERATION.ROUTE,
SDH.PRG_TRONCON_OPERATION.LOCAL1,
SDH.PRG_TRONCON_OPERATION.LOCAL2,
SDH.PRG_TRONCON_OPERATION.OFFSET,
SDH.PRG_TRONCON_OPERATION.OFFSET_SIDE,
SDH.PRG_OPERATION.ID_PRG_LEX_SOUS_PROGRAMME, <-- il ne dit rien à cette ligne
SDH.PRG_OPERATION.ANNEE_OPERATION 
FROM 
(
(
(
SDH.PRG_TRONCON_OPERATION LEFT JOIN SDH.PRG_LEX_SOUS_PROGRAMME 
/*Ligne 17:*/ON SDH.PRG_OPERATION.ID_PRG_LEX_SOUS_PROGRAMME = SDH.PRG_LEX_SOUS_PROGRAMME.ID_PRG_LEX_SOUS_PROGRAMME) 
LEFT JOIN SDH.PRG_LEX_ETAT ON SDH.PRG_OPERATION.ID_PRG_LEX_ETAT = SDH.PRG_LEX_ETAT.ID_PRG_LEX_ETAT) 
INNER JOIN SDH.PRG_OPERATION ON SDH.PRG_TRONCON_OPERATION.CODE_ITIN =SDH.PRG_OPERATION.CODE_ITIN) 
WHERE  SDH.PRG_TRONCON_OPERATION.CODE_ITIN = SDH.PRG_OPERATION.CODE_ITIN  
AND SDH.PRG_OPERATION.ANNEE_OPERATION = 2011 
ORDER BY SDH.PRG_TRONCON_OPERATION.ROUTE,SDH.PRG_TRONCON_OPERATION.LOCAL1)
et voici l'erreur que j'obtiens :

Code :
1
2
3
 
ERREUR à la ligne 17 :
ORA-00904: "SDH"."PRG_OPERATION"."ID_PRG_LEX_SOUS_PROGRAMME" : identificateur non valide
Alors que l'identificateur existe.


Si quelqu'un a une idée
Mr_Coinche est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2010, 12h33   #2
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 437
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 437
Points : 4 173
Points : 4 173
Code :
1
2
(SDH.PRG_TRONCON_OPERATION LEFT JOIN SDH.PRG_LEX_SOUS_PROGRAMME  
ON SDH.PRG_OPERATION.ID_PRG_LEX_SOUS_PROGRAMME = SDH.PRG_LEX_SOUS_PROGRAMME.ID_PRG_LEX_SOUS_PROGRAMME)
C'est normal, tu joins 2 tables (troncon et sousprog) et la clause ON lie sousprog à operation

Essayes plutôt d'utiliser la norme avec
Code :
FROM <les tables> WHERE <conditions de jointure>
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2010, 15h42   #3
Modérateur
 
Homme Fabien
Ingénieur d'études en décisionnel
Inscription : septembre 2008
Messages : 5 684
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 34
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études en décisionnel
Secteur : Arts - Culture

Informations forums :
Inscription : septembre 2008
Messages : 5 684
Points : 10 463
Points : 10 463
Envoyer un message via ICQ à Waldar Envoyer un message via Skype™ à Waldar
Les tables du FROM sont lues dans l'ordre.
Votre première jointure fait appel à une table pas encore référencée.
__________________
Email : http://scr.im/waldar
Waldar est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h04.


 
 
 
 
Partenaires

Hébergement Web