IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Erreur requête sql:invalid relational operator


Sujet :

SQL Oracle

  1. #1
    mame06
    Invité(e)
    Par défaut Erreur requête sql:invalid relational operator
    Bonjour tout le monde
    Bon voilà j'essaie d'exécuter la requête suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    String requeteDetails = "SELECT transactions.numTrans, transactions.numCompte, SUM(monTrans)"
                    + "FROM transactions "
                    + "WHERE ((trim(transactions.numCompte) MATCHES'01*' OR trim(transactions.numCompte) MATCHES '02*') "
                    + "AND((transactions.numTrans='1') OR (transactions.numTrans='8') OR (transactions.numTrans='15'))"
                    + "AND (transactions.monTran>=100 AND (transactions.monTran%100=0))"
                    + "AND transactions.deteTrans=TO_DATE('" + dateSaisie + "','dd-MM-yyyy') GROUP BY transactions.numCompte ORDER BY transactions.numCompte";
    ResultSet result3 = state1.executeQuery(requeteDetails);
    mais je reçois cette erreur à l'exécution:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    GRAVE: null
    java.sql.SQLException: ORA-00920: invalid relational operator
     
    	at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
    	at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
    	at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:573)
    	at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1891)
    	at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteDescribe(TTC7Protocol.java:830)
    	at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2391)
    	at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2672)
    	at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:572)
    	at ManagedBeans.GenerationMB.genererFiche(GenerationMB.java:302)
    et la ligne 302 en question c'est cette ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ResultSet result3 = state1.executeQuery(requeteDetails);
    Quelqu'un aurait-il une idée??? merci d'avance.

  2. #2
    Rédacteur

    Homme Profil pro
    Consultant / formateur Oracle et SQL Server
    Inscrit en
    Décembre 2002
    Messages
    3 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant / formateur Oracle et SQL Server

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 461
    Points : 8 079
    Points
    8 079
    Par défaut
    Je suppose que c'est MATCHES qui n'est pas reconnu...

  3. #3
    mame06
    Invité(e)
    Par défaut
    Citation Envoyé par Pomalaix Voir le message
    Je suppose que c'est MATCHES qui n'est pas reconnu...
    Merci Pamalaix pour votre réponse. j'ai enlevé MATCHES et j'ai mis LIKE mais maintenant j'ai cette erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORA-00979 : not a group by expression

  4. #4
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Parce que numTrans n'est pas dans le group BY.
    Quand vous avez des erreurs essayez d'exécuter la requête dans sqlplus.

  5. #5
    mame06
    Invité(e)
    Par défaut
    Citation Envoyé par mnitu Voir le message
    Parce que numTrans n'est pas dans le group BY.
    Quand vous avez des erreurs essayez d'exécuter la requête dans sqlplus.
    OUI, c'est ça . je l'ai corrigé merci bien.

Discussions similaires

  1. Erreur requête SQL en VBA dans Excel
    Par Sergeith dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/06/2009, 15h06
  2. [ADO] Requête SQL invalide
    Par CrazySeb dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/06/2008, 09h11
  3. [MySQL] Erreur requête SQL
    Par miniBob dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 12/06/2008, 15h44
  4. Requéte SQL invalide sous c++ builder
    Par fpascal dans le forum Langage SQL
    Réponses: 9
    Dernier message: 19/11/2007, 09h19
  5. erreur requète SQL : trop peu de paramètres
    Par pierre.egaud dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 21/04/2006, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo