Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour 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/08/2011, 18h04   #1
Invité de passage
 
Inscription : juillet 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 15
Points : 1
Points : 1
Par défaut Problème parenthèse sur requête SQL

Bonjour,

Je suis entrain de monter une requête sql et je ne comprends pas pourquoi il m'indique qu'il me manque une parenthèse ...

Voici mon code

Code :
1
2
3
4
5
6
7
8
9
10
11
UPDATE Sunauxf.Jacmovp_Intsage@XXXXX SET
   Motif_Rejet='ERREUR_COMPTE'
    WHERE Wpiec IN 
    (SELECT DISTINCT SJ.WPIEC
		FROM Sunauxf.V_Jacmovp_Notinteg@XXXXX Sj
  		LEFT OUTER JOIN P2_test.V_Plancompte Vpc ON 
  		(Substr(Sj.Cimcp,1,9) = Vpc.Codecompte
  		AND (Vpc.Caption = Decode(Sj.Socmv,10,'PC Assurance',80,'PC Assurance',90,'PC Général','A') OR Vpc.Caption='Dossier')
      )
		WHERE Vpc.Codecompte IS NULL
		);

Merci à vous

rudy

PS : voici le message d'erreur
Citation:
Rapport d'erreur :
Erreur SQL : ORA-00907: parenthèse de droite absente
ORA-02063: preceding line from SUNSHINE
00907. 00000 - "missing right parenthesis"
*Cause:
*Action:
Fcapitaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 08h32   #2
Membre éprouvé
 
Avatar de xdescamp
 
Homme Xavier Descamps
Inscription : octobre 2008
Messages : 297
Détails du profil
Informations personnelles :
Nom : Homme Xavier Descamps
Âge : 36
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2008
Messages : 297
Points : 422
Points : 422
Envoyer un message via Skype™ à xdescamp
Bonjour,

Effectivement, il ne semble pas y avoir d'erreur de parenthèse dans la requête.

Le message d'erreur est-il celui donné par une exécution sous SQL*Plus ? Parce que normalement, il donne la position de l'erreur (au moins le numéro de ligne).

Les objets utilisés dans le select semblent être des vues. Sont-elles bien valides et utilisables unitairement ? Cette piste me semble d'autant plus plausible qu'il n'y a aucun objet SUNSHINE dans votre requête.
xdescamp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 09h33   #3
Rédacteur/Modérateur
 
Avatar de orafrance
 
Inscription : janvier 2004
Messages : 15 861
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : janvier 2004
Messages : 15 861
Points : 16 212
Points : 16 212
il y a au moins une erreur de parenthèses :
(Substr(Sj.Cimcp,1,9) (Substr(Sj.Cimcp,1,9))

orafrance est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 09h37   #4
Membre éprouvé
 
Avatar de xdescamp
 
Homme Xavier Descamps
Inscription : octobre 2008
Messages : 297
Détails du profil
Informations personnelles :
Nom : Homme Xavier Descamps
Âge : 36
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2008
Messages : 297
Points : 422
Points : 422
Envoyer un message via Skype™ à xdescamp
Citation:
Envoyé par orafrance Voir le message
il y a au moins une erreur de parenthèses :
(Substr(Sj.Cimcp,1,9) (Substr(Sj.Cimcp,1,9))
Non, c'est la parenthèse ouvrante de toute la clause de jointure ON (...). Elle est refermée juste avant le WHERE avec la parenthèse fermante qui est toute seule sur sa ligne. Il n'y a donc pas d'erreur là.
xdescamp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 22h35   #5
Invité de passage
 
Inscription : juillet 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juillet 2009
Messages : 15
Points : 1
Points : 1
Ben SUNSHINE est mon Dblink. Je l'avais remplacé dans ma requête initiale par des XXX
Il me semble que Oracle déclare forfait à cause de le "OR Vpc.Caption='Dossier' »…
En enlevant ce code cela fonctionne bien…

Le plus bizarre est :
- si j’exécute juste la partie du deuxième sélect cela fonctionne
- si j’exécute la même requête sur la base distante cela fonctionne

Je ne comprends rien. J’ai beaucoup de problème pour gérer ma connexion dblink
Fcapitaine 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 09h01.


 
 
 
 
Partenaires

Hébergement Web