Skip site navigation (1) Skip section navigation (2)

Re: type record et psql

From: Jean-Paul Argudo <jean-paul(at)argudo(dot)org>
To: GUEDJ Patrick DSIC BI <Patrick(dot)GUEDJ(at)interieur(dot)gouv(dot)fr>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: type record et psql
Date: 2005-06-08 18:42:15
Message-ID: 20050608184215.GA103@maison.argudo.org (view raw or flat)
Thread:
Lists: pgsql-fr-generale
> Je souhaite écrire une fonction pl/pgsql qui renvoie à l'utilitaire psql un 
> tuple. J'ai donc utilisé le type RECORD en retour de la fonction. La base 
> accepte bien la fonction, mais psql indique qu'il ne peut pas afficher une 
> valeur de type RECORD.

Un exemple vaut mieux qu'un long discours:

script create.sql:

drop function hello_world (varchar);

create function hello_world (varchar) returns record as $$
declare
 result record;
begin

select 'hello '||$1,
       'go to sleep its already '::text, 
       current_time
  into result;

return result;

end;
$$ language plpgsql;

select * 
from hello_world('jean-paul') as (a text,c text, d time with time zone);

test:

$ psql tests < create.sql
DROP FUNCTION
CREATE FUNCTION
        a        |            c             |         d
-----------------+--------------------------+--------------------
 hello jean-paul | go to sleep its already  | 20:41:47.730022+02
(1 row)


Je pense que c'est ce que vous cherchez ?... 
La syntaxe du select est un peu curieuse, j'en conviens ;-)

A+


NB: d'excellentes discussions sur la liste ces derniers jours, hélas pas de
temps pour y participer ces jours cis ... Désolé, je réponds dès que je peux.

-- 
Jean-Paul ARGUDO
www.PostgreSQLFr.org
Trésorier de PostgreSQLFr
OpenPGP : 1024D/93A41CA4

In response to

pgsql-fr-generale by date

Next:From: Stéphane SchildknechtDate: 2005-06-14 08:05:32
Subject: Appel aux bonnes volontés
Previous:From: GUEDJ Patrick DSIC BIDate: 2005-06-08 15:12:04
Subject: type record et psql

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group