from django.db import connection
def executeQuery(query, params):
cur=connection.cursor()
cur.execute(query, params) // this is update query
cur.close()
我有一系列查询,我为每个查询调用此方法,但如果任何查询(假设第三个查询)失败,它似乎会回滚整个操作。
我想,execute()
后,它会立即提交它,并且不依赖于下一个查询。
django 不应该有自动提交功能吗?
数据库更改操作会自动提交。但是,如果您使用的是django.middleware.transaction.TransactionMiddleware
或类似的东西,则只有在页面呈现完成且没有任何错误时才会提交它们,否则会发生回滚。
有关更多详细信息,请参阅 django 1.5 的文档(问题中使用的版本)。也请查看最新的文档。