changeset: 74988:a1f17e108a1b branch: 2.7 parent: 74980:d2b08b5896d9 user: Petri Lehtinen date: Thu Feb 16 21:42:34 2012 +0200 files: Doc/includes/sqlite3/shortcut_methods.py Doc/library/sqlite3.rst Misc/NEWS description: Fix errors in sqlite3's Cursor.rowcount documentation Closes #13995. diff -r d2b08b5896d9 -r a1f17e108a1b Doc/includes/sqlite3/shortcut_methods.py --- a/Doc/includes/sqlite3/shortcut_methods.py Thu Feb 16 00:44:50 2012 -0800 +++ b/Doc/includes/sqlite3/shortcut_methods.py Thu Feb 16 21:42:34 2012 +0200 @@ -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 -r d2b08b5896d9 -r a1f17e108a1b Doc/library/sqlite3.rst --- a/Doc/library/sqlite3.rst Thu Feb 16 00:44:50 2012 -0800 +++ b/Doc/library/sqlite3.rst Thu Feb 16 21:42:34 2012 +0200 @@ -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 -r d2b08b5896d9 -r a1f17e108a1b Misc/NEWS --- a/Misc/NEWS Thu Feb 16 00:44:50 2012 -0800 +++ b/Misc/NEWS Thu Feb 16 21:42:34 2012 +0200 @@ -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.

AltStyle によって変換されたページ (->オリジナル) /