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 :

[PgAdmin 3]Procédure stockée


Sujet :

PostgreSQL

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2005
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 4
    Points : 5
    Points
    5
    Par défaut [PgAdmin 3]Procédure stockée
    Bonjour, je viens de découvrir PostGré et j'aurais bien aimé pouvoir utiliser les procédures stockées. Voila mon code

    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
     
    CREATE FUNCTION ps_connexion(IN mdp "varchar", IN service int8, IN "log_in" "varchar", OUT resultat record) AS
    $BODY$
    BEGIN
    rec RECORD
    FOR rec IN SELECT * FROM TblConnexion WHERE IDService=mdp 
    AND Identifiant=log_in AND motdepasse=mdp
    LOOP
    	RETURN NEXT rec;
    END LOOP;
    RETURN;
    END;
    $BODY$
    LANGUAGE 'plpgsql' VOLATILE;
    ALTER FUNCTION ps_connexion("varchar", int8, "varchar", record) OWNER TO "user";
    Quand je veux la valider PgAdmin 3, me dit : "ERROR : plpgsql functions cannot take type record
    CONTEXTE : compile of PL/pgSQL function "ps_connexion" near line 0

  2. #2
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 503
    Points
    503
    Par défaut
    Le problème c'est que tu ne précises pas que ta fonction renvoie des enregistrements (records). Ici, puisque tu sélectionnes toutes les colonnes de TblConnexion tu peux dire que tu renvoies un ensemble d'enregistrements de cette table même.

    Essaie ça pour la procédure stockée :

    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
     
     
    CREATE FUNCTION ps_connexion(IN mdp "varchar", IN service int8, IN "log_in" "varchar") RETURNS SETOF TblConnexion AS
    $$
    DECLARE
    rec RECORD
     
    BEGIN
     
    FOR rec IN SELECT * FROM TblConnexion WHERE IDService=mdp
    AND Identifiant=log_in AND motdepasse=mdp
    LOOP
       RETURN NEXT rec;
    END LOOP;
     
    RETURN;
     
    END;
    $$
    LANGUAGE 'plpgsql' VOLATILE;
    et aps tu appelles ta procédure comme ça :

    select * from ps_connexion(p1,p2,p3);

    où p1,p2,p3 sont tes paramètres.
    Développeur Java / Android.
    The Truth About Bitcoin : https://www.the-truth-about-bitcoin.com/
    In Bitcoin We Trust : https://inbitcoinwetrust.substack.com
    Retrouvez mes Apps Android : https://play.google.com/store/apps/d...01024188312025
    Tout sur le Bitcoin, la Blockchain et les Altcoins : https://www.toutsurlebitcoin.fr
    Devenez une meilleure de vous-même jour après jour : https://www.jedeviensmeilleur.fr

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2005
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Merci, ca fonctionne parfaitement grâce à toi
    J'ai juste du rajouter un ; et modifier une variable du code que tu m'as donner

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

Discussions similaires

  1. passage d'un nom de table dans une procédure stockée
    Par thierry V dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 26/07/2010, 16h48
  2. Procédure stocké:Insert et renvoie de la clé primair
    Par caramel dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 17/04/2003, 09h34
  3. [Pervasive SQL ] procédure stockée
    Par magellan dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 25/10/2002, 13h17
  4. Explication procédure stockée
    Par underworld dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/09/2002, 10h51
  5. [Comparatif] Procédures stockées, triggers, etc.
    Par MCZz dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 28/08/2002, 12h27

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