Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/05/2008, 10h33   #1
Invité de passage
 
Inscription : avril 2008
Messages : 2
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 2
Points : 0
Points : 0
Par défaut [v8.3] Créer une fonction avec un argument "tableau de composites" ?

Bonjour,

J'ai besoin de créer une fonction à laquelle je dois passer un tableau de composites en argument.

Ma déclaration est celle-ci :
CREATE OR REPLACE FUNCTION wp.get_insert
(
fields wp.field[]
)
RETURNS varchar AS
$$
begin
.....
end
$$

PostgreSQL accepte la création sans aucune erreur.
Malheureusement, lorsque je recharge la fonction à l'écran, je me retrouve avec ceci :

-- Function: wp.get_insert(fields wp._field)

-- DROP FUNCTION wp.get_insert(fields wp._field);

CREATE OR REPLACE FUNCTION wp.get_insert
(
fields wp._field
)
RETURNS varchar AS
$$
begin
...........
end
$$

On voit que les brackets [] on disparu, et qu'un underscore a été inséré dans le nom du type.
Comment expliquer ce phénomène ? Ce type d'argument n'est-il pas supporté ? Ou bien me trompe_je qq part ?

Merci d'avance de votre aide.

P.D
pierredesproges est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2008, 14h49   #2
Membre du Club
 
Inscription : mai 2007
Messages : 149
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 149
Points : 53
Points : 53
Bonjour,
quand je crée une fonction avec pgadminIII, je ne vois pas de choix field[]. On ne peut donc pas passer un tableau de field et c est pourquoi postgres accepte le mot clé field mais pas le tableau.
Essaies avec un anyarray.
bilou972 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h21.


 
 
 
 
Partenaires

Hébergement Web