Tuesday, April 10, 2012

SQLAlchemy - select for update example

I'm looking for a complete example of using select for update in SQLAlchemy, but haven't found one googling. I need to lock a single row and update a column, the following code doesn't work (blocks forever):



s = table.select(table.c.user=="test",for_update=True)
# Do update or not depending on the row
u = table.update().where(table.c.user=="test")
u.execute(email="foo")


Do I need a commit? How do I do that? As far as I know you need to:
begin transaction
select ... for update
update
commit





No comments:

Post a Comment