在此处关闭文档:http://docs.djangoproject.com/en/dev/topics/db/sql/
>>>cursor = connection.cursor()
>>>cursor.execute("UPDATE bar SET foo = 1 WHERE baz = %s", [self.baz])
>>>print cursor.fetchone()
None
有谁知道如何返回修改后的行数?
(注意:我试过 transaction.commit_unless_managed() 和 cursor.fetchone()(还有 cursor.fetchall())的放置/顺序,它似乎没有什么不同)
谢谢! -汤姆
最佳答案
示例中的 UPDATE 语句不会返回行结果,因此 fetchone()
将始终为空(或者可能会引发错误)。
使用 cursor.rowcount
获取最后受影响的行。
关于Django - 执行原始 SQL 更新/删除并返回行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/972086/