Composite Type Argument Construction to a Function

Started by Nonameover 21 years ago2 messagesgeneral
Jump to latest
#1Noname
tsarevich@gmail.com

create type my_type (my_test text, my_int integer);

create function my_function(my_type)
returns timestamp as
'begin
return (current_timestamp);
end;
'
language 'plpgsql';

In 7.3.5, we are trying to get around the 32 argument limit of the
functions WITHOUT re-compiling with a greater func_max_args (due to
operational reasons).

My question is - HOW do I construct the argument to
my_function(my_type) so that the function recognises that I am passing
into it composite data?

NB: The example function is just "junque" to test passing a composite
type to a function.

TIA

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#1)
Re: Composite Type Argument Construction to a Function

<tsarevich@gmail.com> writes:

My question is - HOW do I construct the argument to
my_function(my_type) so that the function recognises that I am passing
into it composite data?

Sorry, don't think you're going to have much joy on that in 7.3.

In 8.0 you could do it with a ROW() constructor, but there's no such
thing in 7.3. IIRC the only way to pass a row value as a function
argument in 7.3 is to select the row from a table, viz

select my_function(t.*) from some_table t;

regards, tom lane