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 :

Problème de fonction


Sujet :

PostgreSQL

  1. #1
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut Problème de fonction
    Bonjour à tous, je débute sur postgresql et j'écris depuis hier mes premières fonctions. J'ai un problème avec celle-ci qui doit me renvoyer tous les enregistrements de la table "Deliveries" dont le champ "receiverLogin" est égal au paramètre et le champ "state" est égal à 'DOWNLOADING' :
    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
    CREATE OR REPLACE FUNCTION getexchangeinputs(_receiver text)
      RETURNS SETOF "Deliveries" AS
    $BODY$
    DECLARE
        delivery "Deliveries"%ROWTYPE;
    BEGIN
        FOR delivery IN SELECT * FROM "Exchanges" WHERE ("receiverLogin"=_receiver AND "state"='DOWNLOADING')
        LOOP
            RETURN NEXT delivery;
        END LOOP;
        RETURN;
    END;
    $BODY$
      LANGUAGE 'plpgsql' VOLATILE
      COST 100;
    ALTER FUNCTION getexchangeinputs(text) OWNER TO dtc;
    GRANT EXECUTE ON FUNCTION getexchangeinputs(text) TO public;
    GRANT EXECUTE ON FUNCTION getexchangeinputs(text) TO dtc;
    Quand je fais un test (SELECT getexchangeinputs('a')) j'ai l'erreur suivante :
    ERROR: invalid input syntax for type timestamp with time zone: "a"
    CONTEXT: PL/pgSQL function "getexchangeinputs" line 4 at FOR over SELECT rows
    Or aucun enregistrement n'a la valeur "a" dans un timestamp (voir image jointe), suis-je passé à côté de quelque chose? (oui sûrement sinon ça fonctionnerait...)
    Images attachées Images attachées  

  2. #2
    Membre chevronné
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Points : 2 197
    Points
    2 197
    Par défaut
    Le problème est résolu, il y avait une discordance entre la table attaquée par la requête (Exchanges) et le type de retour de la fonction (Deliveries) ...

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

Discussions similaires

  1. C++ Problème de fonctions et pointeurs
    Par zmatz dans le forum C++
    Réponses: 3
    Dernier message: 01/10/2005, 16h20
  2. [MFC][WINSOCK] Problème avec fonction recv
    Par Le Farfadet dans le forum MFC
    Réponses: 4
    Dernier message: 23/09/2005, 11h00
  3. Problème de fonction
    Par Anduriel dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/05/2005, 20h30
  4. Problème avec fonction d'envoie de mail
    Par zyg dans le forum Réseau/Web
    Réponses: 1
    Dernier message: 23/02/2005, 08h48
  5. [Requête] Problème avec fonction "DATE_FORMAT()"
    Par sekiryou dans le forum Requêtes
    Réponses: 4
    Dernier message: 11/01/2005, 21h52

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