2010-09-20 5 views
1

Comment envoyer une table pour fonctionner en tant qu'argument?Comment envoyer la table à fonctionner comme argument?

besoin de quelque chose comme ça:

CREATE OR REPLACE FUNCTION test(argTable TABLE(
     field1 integer, 
     field1 integer, 
     etc smallint 
)) 
    RETURNS integer AS 
$BODY$ 

... Est-il possible btw? UPD: Je vais envoyer une table temporaire pour fonctionner, donc je suppose que j'ai besoin d'une déclaration de structure de table dans la liste des arguments.

Répondre

2

Vous pouvez utiliser EXECUTE qui permet l'exécution d'une chaîne arbitraire.

+0

merci. En fait, ce n'est pas ce que j'avais prévu de faire. mais cela a résolu mon problème. – noxvile

+1

En fait, EXECUTE est le meilleur moyen. Je suppose que vous vouliez passer les lignes de la table en tant que valeurs. Là où l'exécution est plus comme une approche de passage par référence qui n'engendre pas le coût de déplacer un gros morceau de données autour. – Kuberchaun

Questions connexes