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

PL/SQL Oracle Discussion :

une procedure pl/sql qui ne marche pas


Sujet :

PL/SQL Oracle

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Points : 9
    Points
    9
    Par défaut une procedure pl/sql qui ne marche pas
    bonjour tout le monde est ce que quelqu'un peut m'expliquer pk cette quand j'exécute cette procédure il y a rien qui s'affiche merci d'avance
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    CREATE PROCEDURE nomsPlusDeFilms(nbFilms NUMBER)
    Cursor lesActeurs is
    select nomIndividu 
    from Individu
    Where numIndividu IN (SELECT numActeur 
                          from acteur 
                          group by numindividu
                          having Count(numfilm)> nbFilms);
    sonNom nomIndividu.Individu% TYPE;
     
      begin 
      dbms_output.put_line('Voici les acteurs ayant joué dans plus de '||nbFilms||'films:')
      open lesActeurs;
     
    loop 
    fetch lesActeurs into sonNom;
    exit when lesActeurs%NOTFOUND;
    dbms_output.put_line(sonNom);
    end loop;
    dbms_output.put_line('voici le nombre acteurs ayant joué dans plus de '||nbFilms||' films :' || lesActeurs%rowCount);
    close lesActeurs;
    end;
     
     
    execute nomsPlusDeFilms(5);

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 14
    Points : 9
    Points
    9
    Par défaut
    en faite j'obtiens ce message d'erreur:
    Erreur commençant à la ligne 1 de la commande :
    execute nomsPlusDeFilms(5);
    Rapport d'erreur :
    ORA-06550: Ligne 1, colonne 7 :
    PLS-00905: l'objet SYSTEM.NOMSPLUSDEFILMS n'est pas valide
    ORA-06550: Ligne 1, colonne 7 :
    PL/SQL: Statement ignored
    06550. 00000 - "line %s, column %s:\n%s"
    *Cause: Usually a PL/SQL compilation error.
    *Action:

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2005
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 316
    Points : 388
    Points
    388
    Par défaut
    bonjour,
    il faudrait pas un / pour lancer la compilation apres le end; ?
    et juste derriere fait un show error pour voir les erreurs de compilation.
    Change aussi le debut par 'create or replace' sinon il va te dire que la procedure existe deja.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sonNom nomIndividu.Individu% TYPE;
    il ne doit pas y avoir d'espace entre % et TYPE

    Bon courage

  4. #4
    Nouveau membre du Club
    Inscrit en
    Juillet 2009
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 21
    Points : 30
    Points
    30
    Par défaut
    il te manque aussi un IS après la signature de la procédure:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE PROCEDURE nomsPlusDeFilms(nbFilms NUMBER) IS 
    Cursor lesActeurs IS .....
    khalid

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Salut,
    SYSTEM.NOMSPLUSDEFILMS n'est pas valide tu fais appel a une fonction/procedure/package non valide.
    Il faudrait le compiler.

Discussions similaires

  1. Une requête pourtant simple qui ne marche pas
    Par JeanNoel53 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 13/12/2010, 18h30
  2. requête SQL qui ne marche pas en tant que vue (view)
    Par charlesz dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 01/08/2008, 14h25
  3. appel d'une methode qui ne marche pas
    Par hansaplast dans le forum C++
    Réponses: 4
    Dernier message: 27/04/2006, 13h52
  4. Acceder a une base SQL qui n'est pas sur le meme serveur
    Par skyo dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/01/2006, 10h58

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