[Python-checkins] cpython (2.7): Fix errors in sqlite3's Cursor.rowcount documentation
petri.lehtinen
python-checkins at python.org
Thu Feb 16 20:47:32 CET 2012
http://hg.python.org/cpython/rev/a1f17e108a1b
changeset: 74988:a1f17e108a1b
branch: 2.7
parent: 74980:d2b08b5896d9
user: Petri Lehtinen <petri at digip.org>
date: Thu Feb 16 21:42:34 2012 +0200
summary:
Fix errors in sqlite3's Cursor.rowcount documentation
Closes #13995.
files:
Doc/includes/sqlite3/shortcut_methods.py | 3 +--
Doc/library/sqlite3.rst | 11 +++++------
Misc/NEWS | 2 ++
3 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/Doc/includes/sqlite3/shortcut_methods.py b/Doc/includes/sqlite3/shortcut_methods.py
--- a/Doc/includes/sqlite3/shortcut_methods.py
+++ b/Doc/includes/sqlite3/shortcut_methods.py
@@ -17,5 +17,4 @@
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"
diff --git a/Doc/library/sqlite3.rst b/Doc/library/sqlite3.rst
--- a/Doc/library/sqlite3.rst
+++ b/Doc/library/sqlite3.rst
@@ -548,18 +548,17 @@
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
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -575,6 +575,8 @@
Documentation
-------------
+- Issue #13995: Fix errors in sqlite3's Cursor.rowcount documentation
+
- Issue #13402: Document absoluteness of sys.executable.
- Issue #13883: PYTHONCASEOK also works on OS X, OS/2, and RiscOS.
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list