我的怀疑是非常SQLish,但是
因为psycopg2异步连接是自动提交的,所以我手动设置事务,然后在同一个游标/连接中关闭它。
如下所示:
async def transaction(self, queries):
async with aiopg.create_pool(connection) as pool:
async with pool.acquire() as conn:
async with conn.cursor() as cur:
await cur.execute('BEGIN transaction;')
for query in queries:
await cur.execute(query)
await cur.execute('COMMIT transaction;')我的疑问是,由于它是完全异步的,如果存在回滚,那么在同一时间间隔内处理的其他命令是否也会回滚,还是会基于连接进行回滚?
谢谢!!
发布于 2017-02-23 04:06:22
回滚是基于连接的。
https://stackoverflow.com/questions/42365280
复制相似问题