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

PostgreSQL Discussion :

pb avec le pl/pgsql


Sujet :

PostgreSQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Octobre 2002
    Messages : 24
    Points : 26
    Points
    26
    Par défaut pb avec le pl/pgsql
    Bonjour
    j'ai un problème avec le pl/pgsql. J'ai installé l'émulateur unix cygwin et l'outil d'administration pgAdmin III. J'ai bien installé le language pl/pgsql. Mais quand je travaille, même quand mon code est bien écrit, le compilateur de pl/pgsql m'affiche toujours des messages. Je me demande pourquoi. Est ce qu'il n'y a pas une manipulation que j'ai loupé ? si oui laquelle ?

    Par exemple j'ai écrit une fonction simple qui m'affiche juste un message

    "raise_application_error(-20001,'un client a été ajouté'); "

    Et j'ai le message d'erreur suivant :

    ERROR: syntax error at or near "raise_application_error"
    CONTEXT: compile of PL/pgSQL function "test" near line 1



    Quelqu'un peut vraiment m'aider ?

  2. #2
    Membre averti
    Inscrit en
    Octobre 2003
    Messages
    266
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 266
    Points : 318
    Points
    318
    Par défaut
    Salut,

    Peux-tu nous donner un exemple de ton code ?

    Merci.
    @+

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    24
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Octobre 2002
    Messages : 24
    Points : 26
    Points
    26
    Par défaut un exemple simple
    Voici un exemple simple qu'il ne compile pas :

    create function test () returns trigger
    as
    ' raise_application_error(-20001,'ceci est un exemple');
    '
    language 'plpgsql' volatile;


    et j'appelle ma fonction dans un trigger simple

    create trigger test_test
    after insert on nom_table
    for each row
    execute procedure test();


    voilà, c'est tout et c'est ce qui ne marche pas. Juste un simple affichage.

  4. #4
    Membre averti
    Inscrit en
    Octobre 2003
    Messages
    266
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 266
    Points : 318
    Points
    318
    Par défaut
    C'est peut-être bête mais je pense que le problème vient de tes apostrophes qui entourent ton texte : il doit les confondre avec la fin de ton code.

    Essayes ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    create function test () returns trigger
    as
    ' raise_application_error(-20001,\'ceci est un exemple\');
    '
    language 'plpgsql' volatile;
    @+

Discussions similaires

  1. problème avec requête simple pgsql
    Par php_faboul dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 30/04/2010, 10h50
  2. Help : Pb d'installation avec pgsql
    Par gueeyom dans le forum PostgreSQL
    Réponses: 10
    Dernier message: 03/06/2004, 17h54
  3. Install TOra avec PgSQL
    Par ange dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/03/2004, 12h09
  4. installation php avec option --with-pgsql: marche pô.
    Par phil25 dans le forum Requêtes
    Réponses: 3
    Dernier message: 02/01/2004, 15h59
  5. installation php avec option --with-pgsql: marche pô.
    Par phil25 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 02/01/2004, 15h59

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