代码之家  ›  专栏  ›  技术社区  ›  Matt Joiner

获取sqlite3执行后修改的行数

  •  15
  • Matt Joiner  · 技术社区  · 15 年前

    执行SQL语句时,例如 UPDATE INSERT ,通常 .fetch*() 方法论 Cursor 实例显然不适用于 行已修改 .

    如果执行上述语句之一,那么在python中获取相应行数的正确方法是什么,在sqlite3 c接口中获取相应的API的正确方法是什么?

    2 回复  |  直到 7 年前
        1
  •  26
  •   Matt Joiner    15 年前

    打电话给你的 Cursor.execute*() 方法与可以使用的update或insert语句一起使用 Cursor.rowcount 查看受执行调用影响的行的。

    如果不得不猜的话,我会说python lib正在调用 int sqlite3_changes(sqlite3*) 但我还没有看过代码,所以我不能确定。

        2
  •  0
  •   8.8.8.8    7 年前

    假设表 test(rowid, value) 如下所述。 (1,‘3’) (2,‘A’) 执行后 update test set value = '3' where rowid=1 . Cursor.row=1 . 我认为它返回的是匹配的行

    推荐文章