【发布时间】:2014-03-16 03:47:04
【问题描述】:
我刚切换到 Django 1.6(使用 Posgres 9.1),有几个问题我自己无法回答:
(已回答)如果我目前在一个或多个内部并且
transaction.atomic阻塞,是否有打印/显示我的语句?(已回答)我既没有启用
TransactionMiddleware,也没有将ATOMIC_REQUESTS设置为 True。因此,默认情况下,我的代码不会包含在transaction.atomic块中,对吗?-
在
transaction.atomic块内执行时,通过游标执行的sql 语句是否正确提交?是否有另一种/更好的方式来提交它们?with transaction.atomic(): cursor = connection.cursor() cursor.execute(sql) 我需要将
cursor.executemany()包装在transaction.atomic块中还是已经自动执行?如何查看当前的
autocommit状态?何时将状态设置为连接开始时的事务,作为全局数据库设置?
【问题讨论】:
-
#2 绝对正确...默认行为已更改为 DB 级自动提交
-
请在每个帖子中提出一个问题。
标签: django transactions postgresql-9.1 atomic django-1.6