在更新之后,我从mysql客户机命令行获得有用的信息,告诉我WHERE子句匹配了多少行,以及实际更改了多少行。在我将这些值设置为现有值的情况下,我得到1个匹配值,0个已更改。在
这是我想在pythonmysqldb脚本中捕获的非常有用的信息。我试过了数据库受影响行()和cursor.rowcount但结果总是为1(似乎是“匹配”值)。我试过有承诺和没有承诺。在
如何在Python中找到匹配值和更改后的值?在
mysql> UPDATE userlogtable SET somefield="samedata" WHERE idxfield=1;
Query OK, 0 rows affected (0.02 sec)
Rows matched: 1 Changed: 0 Warnings: 0
mysql> UPDATE userlogtable SET somefield="newdata" WHERE idxfield=1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
默认情况下,}应该给出更改的行数。FOUND_ROWS选项使
db.affected_rows()
和{cursor.rowcount
返回匹配的行数:要获得匹配行数和更改行数的两种方法,请查看以下问题:
How to get matched Rows from MySQLdb.cursors.Cursor python2.6
相关问题 更多 >
编程相关推荐