"Nikita Koselev" <koselev(at)gmail(dot)com> writes:
> SELECT * FROM add_position('{("name", "descr", "req_id", "req_type_id",
> "priority_id", "nec_id", 2.1321, 1.2323)}');
Parentheses are not part of the array-literal syntax. You'd need
something more like
'{"(\"name\", \"descr\", ...)"}'
and the backslashes would have to be doubled if this is an old-style
string literal.
Personally I'd avoid the thicket of quoting rules and build up the value
using SQL constructs:
array[row('name', 'descr', ...)::requirement_vo, row(...), ...]
I think casting the first row() to the desired rowtype is probably
sufficient, though it might depend on which PG version you're using.
regards, tom lane