我試圖弄清 MySQLdb文檔。我只是想知道是否有遺漏的東西。例如,我試圖查看「rowcount」(一個常量)實際上做了什麼,但在文檔中沒有看到它。Python MYSQLdb文檔缺少詳細信息?
所以是文件不完整或我只是看錯了地方?
謝謝。
我試圖弄清 MySQLdb文檔。我只是想知道是否有遺漏的東西。例如,我試圖查看「rowcount」(一個常量)實際上做了什麼,但在文檔中沒有看到它。Python MYSQLdb文檔缺少詳細信息?
所以是文件不完整或我只是看錯了地方?
謝謝。
爲Python數據庫模塊文檔的主要來源是the DB-API 2.0 specification:
.rowcount This read-only attribute specifies the number of rows that the last .execute*() produced (for DQL statements like 'select') or affected (for DML statements like 'update' or 'insert'). The attribute is -1 in case no .execute*() has been performed on the cursor or the rowcount of the last operation is cannot be determined by the interface. [7] Note: Future versions of the DB API specification could redefine the latter case to have the object return None instead of -1.
明白了。謝謝。 – user721975
我用下面的谷歌搜索:rowcount site:mysql-python.sourceforge.net
它往往是更好地使用谷歌site:
運算符搜索一個網站,而不是使用該網站的本地搜索。但是你的權利,它沒有它自己的文檔。
我很欣賞google-fu,但是你忽略了實際點擊鏈接。在該頁面上沒有稱爲'rowcount'的函數。有'field_count'和'affected_rows',兩者都建議你調用'Cursor.rowcount'。 –
有趣的是,'Cursor.rowcount'似乎是無證的,這可能是OP爲什麼要問這個問題的原因... –
@chris:我不是說它是一個Fu,並不是每個人都知道site:operator。你是對的,我誤解了鏈接,但幾乎立即糾正了我的帖子。 –
通過源代碼研讀之後那麼,這裏的相關行(MySQLdb的/ cursors.py:120)
self.rowcount = db.affected_rows()
所以rowcount
是隻爲Cursor
類(不是法),成員變量,其恰好持有affected_rows
的結果。我想這可能會節省您對該特定功能的調用。
謝謝@Chris。這非常有幫助。 – user721975
您還可以查看MySQLdb實現的[DB-API](http://www.python.org/dev/peps/pep-0249/)。 – bernie
你有沒有試過pydoc文檔?運行交互式shell,導入MySQLdb,運行查詢,並運行'help(Cursor.rowcount)'。我不能保證文檔將在那裏,但它值得一試。 –
@Chris:+1對於pydoc評論 –