Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Sqlalchemy Core, insert statement returning * (all columns)

I am using sqlalchemy core (query builder) to do an insert using a table definition. For example:

table.insert().values(a,b,c)

and I can make it return specific columns:

table.insert().values(a,b,c).returning(table.c.id, table.c.name)

but I am using postgres which has a RETURNING * syntax, which returns all the columns in the row. Is there a way to do that with sqlalchemy core?

like image 976
Nick Humrich Avatar asked Dec 08 '22 18:12

Nick Humrich


1 Answers

query = table.insert().values(a,b,c).returning(literal_column('*'))

And you can access it like

for col in execute(query, stmt):
   print(col)
like image 151
user3437231 Avatar answered Jan 15 '23 14:01

user3437231