]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
sqlite3: Fix documentation errors concerning Cursor.rowcount
authorPetri Lehtinen <petri@digip.org>
Thu, 16 Feb 2012 19:39:03 +0000 (21:39 +0200)
committerPetri Lehtinen <petri@digip.org>
Thu, 16 Feb 2012 19:39:03 +0000 (21:39 +0200)
Closes #13995.

Doc/includes/sqlite3/shortcut_methods.py
Doc/library/sqlite3.rst
Misc/NEWS

index 596d87c18e0cd113685bcae7ac11ef0ac1d7380f..71600d4f60c55ef3810c4732773b89f2e868349a 100644 (file)
@@ -17,5 +17,4 @@ con.executemany("insert into person(firstname, lastname) values (?, ?)", persons
 for row in con.execute("select firstname, lastname from person"):
     print(row)
 
-# Using a dummy WHERE clause to not let SQLite take the shortcut table deletes.
-print("I just deleted", con.execute("delete from person where 1=1").rowcount, "rows")
+print("I just deleted", con.execute("delete from person").rowcount, "rows")
index 350950cbc439eac70efc3f16b21c9589a636cc7a..f0fd86cb85593b989467dd856ac4a2520520b477 100644 (file)
@@ -543,18 +543,17 @@ Cursor Objects
    attribute, the database engine's own support for the determination of "rows
    affected"/"rows selected" is quirky.
 
-   For ``DELETE`` statements, SQLite reports :attr:`rowcount` as 0 if you make a
-   ``DELETE FROM table`` without any condition.
-
    For :meth:`executemany` statements, the number of modifications are summed up
    into :attr:`rowcount`.
 
    As required by the Python DB API Spec, the :attr:`rowcount` attribute "is -1 in
    case no ``executeXX()`` has been performed on the cursor or the rowcount of the
-   last operation is not determinable by the interface".
+   last operation is not determinable by the interface". This includes ``SELECT``
+   statements because we cannot determine the number of rows a query produced
+   until all rows were fetched.
 
-   This includes ``SELECT`` statements because we cannot determine the number of
-   rows a query produced until all rows were fetched.
+   With SQLite versions before 3.6.5, :attr:`rowcount` is set to 0 if
+   you make a ``DELETE FROM table`` without any condition.
 
 .. attribute:: Cursor.lastrowid
 
index 8b0e12a8f3baf48aede25a01f94fd17945e1c1cb..9c6485576b421fc97418b26aa014c8ab0e0bf940 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -528,8 +528,8 @@ Extension Modules
 Documentation
 -------------
 
-- Issue #13491: Fix many errors in sqlite3 documentation. Initial
-  patch by Johannes Vogel.
+- Issues #13491 and #13995: Fix many errors in sqlite3 documentation.
+  Initial patch for #13491 by Johannes Vogel.
 
 - Issue #13402: Document absoluteness of sys.executable.