python语言中,对于cursor的查询明明有结果,为什么print cursor.rowcount结果为-1?
生活随笔
收集整理的這篇文章主要介紹了
python语言中,对于cursor的查询明明有结果,为什么print cursor.rowcount结果为-1?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
從網上搜了很多資料,沒有對口的,抓狂。沒辦法自己研究了一下,相信寫出來能夠幫到很多人。
?
下邊是我寫的一段代碼,為了方便大家看我加了行號。從下邊代碼中第4行可以看到,rowcount結果為-1,但是從第5行卻可以將查詢結果打印出來。顯然查詢是有結果的,為什么rowcount為-1呢?
第1行>>> db = mysql.connector.Connect(host=‘10.1.1.47’, port=2205, user=‘boss’, passwd=‘qwekkk’,charset=utf8,db='PP_01') 第2行>>> cursor_pet = db.cursor() 第3行>>> cursor_pet.execute('select userid,petid from t_pp_pet_01') 第4行>>> print cursor_pet.rowcount -1 第5行>>> for list in cursor_pet.fetchall(): ... print list ... (1, 11) (1, 12) (2, 11) (3, 11) (2, 10) (4, 15)
下邊是解決方案。我們應該在打印查詢行數之前先調用一下fetchall()這個函數,然后行數rowcount就打印出來啦:
?
?
?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的python语言中,对于cursor的查询明明有结果,为什么print cursor.rowcount结果为-1?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python连接数据库示例(东西写得很详
- 下一篇: python查询数据库,打印查询结果过程