Thread: [partition table] python fetchall or fetchone function can not get the returning rows
[partition table] python fetchall or fetchone function can not get the returning rows
From
Xiaoning Xu
Date:
Hello, I have a problem concerning the partition table. When I store a record into one of the partition and use "RETURNING table_id" or "RETURNING *", I expect the same result when calling fetchall or fetchone function as not using partition. However, it simply returns nothing. Since the serial primary key of my partition table is the FK of some other tables, I need to get the id after each insertion. My solution now is to select the max id from the parent table. I am wondering if there is any other alternatives to solve this problem. Thank you in advance! Xiaoning
Re: [partition table] python fetchall or fetchone function can not get the returning rows
From
Jasen Betts
Date:
On 2011-12-21, Xiaoning Xu <xixu@bcgsc.ca> wrote: > Hello, > > I have a problem concerning the partition table. > When I store a record into one of the partition and use "RETURNING table_id" or "RETURNING *", > I expect the same result when calling fetchall or fetchone function as not using partition. > However, it simply returns nothing. If you've got a before insert trigger there that does "return false" that's what happens. If you need returning to work, you could look at doing the partitioning in a after insert trigger, deleteing from th main table and inserting into the partition. Else perhaps you can use a rule instead, have the rule run a function and the function return the id. -- ⚂⚃ 100% natural