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 :

Exécution d'une procédure et bug


Sujet :

Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2010
    Messages : 129
    Points : 84
    Points
    84
    Par défaut Exécution d'une procédure et bug
    Bonsoir,

    je viens de créer une procédure nommé AjoutPersonne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    create or replace procedure AjoutPersonne(pNom in varchar2, pPrenom in varchar2, pAge in number) is
    begin
    	insert into Personne (Nom, Prenom, Age) Values (pNom, pPrenom, pAge);
    END;
    La création de la procédure a été faite avec succès !

    J'éxecute la procédure sous Oracle SQL Developper avec Oracle 10g :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AjoutPersonne("BILL", "GATES", 50);
    et là le problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Erreur commençant à la ligne 1 de la commande :
    AJOUTPERSONNE("BILL", "GATES", 50)
    Rapport d'erreur :
    Commande inconnue
    je ne comprends rien
    Merci,

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 260
    Points : 281
    Points
    281
    Par défaut Begin end;
    Bonjour,

    AjoutPersonne n'est pas connu comme commande sql.
    Votre procédure est du PlSql que vous pouvez évoquer depuis PlSql.
    C'est à dire entre un Begin et un End;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Begin
      AjoutPersonne("BILL", "GATES", 50);
    End;
    /
    pozzo

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2010
    Messages : 129
    Points : 84
    Points
    84
    Par défaut
    J'ai essayé mais ça ne marche pas aussi.

    Je travaille sur Oracle Sql Developper.

    Je me connecte avec l'utilisateur SYSTEM à chaque fois :
    -pour créer des procédures ou triggers.
    -pour interroger la base et essayer d'éxecuter des procédures.

    Je suis bloqué à cause de cela.

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 260
    Points : 281
    Points
    281
    Par défaut
    Bonsoir,

    "Ca ne marche pas" c'est un peu vague.
    Qu'obtenez comme message d'erreur ?

    Deux commentaires tout de même :
    1) Le délimiteur de chaine de caractère c'est ' et pas '. Je ne l'avais pas remarqué quand j'ai copié collé.
    Donc ce serait plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Begin
      AjoutPersonne('BILL', 'GATES', 50);
    End;
    /
    C'est le fait de bosser avec Bill gates sous Oracle qui m'a perturbé.

    2) Si c'est un job d'étude c'est bien mais un pro ne créerait pas d'objet sous le compte SYSTEM dont le but est d'administrer la base.
    On se sert de system pour créer un compte Oracle, puis on crée les objets depuis ce compte.

    Mais bon...
    Que donne la commande avec les ' ?

    Pozzo

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    129
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Avril 2010
    Messages : 129
    Points : 84
    Points
    84
    Par défaut
    Merci de ta réponse !
    Et oui Microsoft et Oracle c'est un peu bizzare dans un code source .

    Pour ta méthode, c'est impeccable ça marche très très bien sans erreur !
    Merci pour les précisions sur System comme ça je prendrai de bonnes habitudes.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Exécution d'une procédure stockée dans Sql
    Par Pascalp dans le forum Access
    Réponses: 4
    Dernier message: 01/09/2006, 11h47
  2. [MySQL 5.1]Exécution d'une procédure au démarrage du serveur.
    Par Alexandre T dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 16/06/2006, 14h54
  3. Accès non autorisé à l'exécution d'une procédure stockée
    Par celine33 dans le forum Bases de données
    Réponses: 6
    Dernier message: 11/01/2006, 10h27
  4. [VB6] Durée d'exécution d'une procédure
    Par Peltchag dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 17/10/2005, 14h51
  5. Réponses: 15
    Dernier message: 08/07/2004, 08h20

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