From: | Filipe Pina <filipe(dot)pina(at)impactzero(dot)pt> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | Postgresql General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: pl/python composite type array as input parameter |
Date: | 2015-06-01 14:41:47 |
Message-ID: | 1433169707.3881.0@smtp.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Thanks for the reply anyway, it's a pity though, it'd be useful..
Another bump I've found along the pl/python road: insert ROWTYPE in
table..
Maybe you have some hint on that? :)
So, in PLPGSQL I can:
DECLARE
my_var my_table;
BEGIN
my_var.col1 := 'asd';
INSERT INTO my_table VALUES(my_table.*);
END;
How would I do something like that in pl/python?
First, how to declare a ROW-TYPE variable, as they're all python
mappings?
my_var = { 'col1': 'asd' } enough? it'd would miss all the other
columns...
Second, how to insert it?
plpy.prepare and .execute say they don't support composite types, so I
cannot simply pass
pl = plpy.prepare('INSERT INTO core_customer VALUES ($1)', ['my_table'])
Any workarounds for this? (meaning I wouldn't have to specify any
columns in the insert statement)
Thanks
On Sex, Mai 29, 2015 at 2:00 , Peter Eisentraut <peter_e(at)gmx(dot)net> wrote:
> On 5/18/15 10:52 AM, Filipe Pina wrote:
>> But one of the functions I need to create needs to accept an array
>> of
>> records.
>
> PL/Python doesn't support that. Some more code needs to be written to
> support that. You did everything correctly. I don't know of a good
> workaround.
>
From | Date | Subject | |
---|---|---|---|
Next Message | Rémi Cura | 2015-06-01 16:09:38 | Re: Python 3.2 XP64 and Numpy... |
Previous Message | Adrian Stern | 2015-06-01 14:35:12 | Database designpattern - product feature |