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

Oracle Discussion :

requete SQL marche bien en mysql mais génére une erreur avec oracle


Sujet :

Oracle

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 32
    Points : 29
    Points
    29
    Par défaut requete SQL marche bien en mysql mais génére une erreur avec oracle
    Bonjour ,
    Je suis entrain de migrer ma base de Mysql vers Oracle,la requete ci-dessous marche bien avec mysql mais avec oracle génére une erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    select count(jiraissue.id) as nb, priority.pname champ1,project.pname champ2
    from  jiraissue ,priority  ,project,issuestatus,issuetype  
    where jiraissue.project=project.id  and jiraissue.issuestatus=issuestatus.id 
    and jiraissue.priority =priority.id and jiraissue.issuetype=issuetype.id 
    and issuestatus.pname='Open'  
    group by champ1,champ2

    L'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ORA-00904: "CHAMP2" : identificateur non valide
    00904. 00000 -  "%s: invalid identifier"

  2. #2
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 948
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 948
    Points : 5 847
    Points
    5 847
    Par défaut
    Il faut utiliser le nom des colonnes et pas l'alias dans un GROUP BY
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    GROUP BY priority.pname,project.pname

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 32
    Points : 29
    Points
    29
    Par défaut
    Mon problem que je dois garder les alias parce que je les utilises comme paramétre dans ireport!

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 948
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 948
    Points : 5 847
    Points
    5 847
    Par défaut
    Tu peux évidemment utiliser des alias dans le SELECT mais pas dans le GROUP BY.

    Sinon pour te faire gagner du temps il y a une autre différence avec MySql (ou même avec la norme en générale) qui fera peut être planter d'autres requêtes : tu ne peux pas utiliser AS pour définir des alias de table :
    ne fonctionne pas, il faut écrire :

Discussions similaires

  1. Réponses: 9
    Dernier message: 24/03/2011, 10h11
  2. Requete oracle fonctionne sous toad mais renvoie une erreur via les dataset
    Par tatayet_le_felee dans le forum Accès aux données
    Réponses: 4
    Dernier message: 31/08/2010, 16h45
  3. Mon serveur SQL génère une erreur
    Par puegnon dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 29/01/2008, 17h08
  4. [SQL] Lancer requetes SQL périodiquement sur serveur mysql (easyphp)
    Par bilou95 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 03/12/2007, 12h33
  5. [SGBD] requête sql en php pour mysql
    Par Thierry8 dans le forum Requêtes
    Réponses: 1
    Dernier message: 20/09/2005, 22h31

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