J'ai un petit soucis avec PostgreSQL, SGBD avec lequel je débute.

Voici la définition de la fonction à problème:
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
21
22
23
24
25
26
27
28
29
CREATE OR REPLACE FUNCTION f_select_member_info(int4)
  RETURNS record AS
$BODY$
 
DECLARE 
	memtype char(2);
	myrec record;
 
BEGIN
 
SELECT member_type FROM t_members WHERE card_id=$1 INTO memtype;
 
IF memtype = 'EF' THEN
	SELECT * INTO myrec
	FROM f_dbo_ef_member($1);
ELSIF memtype = 'AD' THEN
	SELECT * INTO myrec
	FROM f_dbo_ad_member($1);
ELSE
	SELECT * INTO myrec
	FROM f_dbo_ag_member($1);
END IF;
 
RETURN myrec;
 
END;
 
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
les fonctions f_dbo_XX_member() fonctionnent très bien séparément et me donnent donc le résultat voulu mais j'aimerais qu'une fonction plus générale puisse appeler tel ou tel fonction.
D'après ce que j'ai lu, je suppose que le problème vient de ma déclaration dans laquelle je précise pas de structure de retour mais je ne SAIS pas le faire puisque ces fonctions retournent des recordsets différents.
Une idée?