關於python中的查詢數據庫內容中用到的fetchone()函數和fetchall()函數(轉)還有fetchmany()


最近在用python操作mysql數據庫時,碰到了下面這兩個函數,標記一下:

fetchone() :

返回單個的元組,也就是一條記錄(row),如果沒有結果 則返回 None

fetchall() :

返回多個元組,即返回多個記錄(rows),如果沒有結果 則返回 ()

獲取前n行數據
row_2 =  cursor .fetchmany(3)  獲取前三行數據,元組包含元組

 

需要注明:在MySQL中是NULL,而在Python中則是None

 

用法如下所示:

fetchone()用法:

cur.execute("select host,user,password from user where user='%s'" %acc)
jilu = cur.fetchone()  ##此時 通過 jilu[0],jilu[1],jilu[2]可以依次訪問host,user,password

 

fetchall()用法:

cur.execute("select * from user")

 

如果select本身取的時候有多條數據時:

cursor.fetchone():將只取最上面的第一條結果,返回單個元組如('id','title'),然后多次使用cursor.fetchone(),依次取得下一條結果,直到為空。

cursor.fetchall() :將返回所有結果,返回二維元組,如(('id','title'),('id','title')),

如果select本身取的時候只有一條數據時:

cursor.fetchone():將只返回一條結果,返回單個元組如('id','title')。

cursor.fetchall() :也將返回所有結果,返回二維元組,如(('id','title'),),

 

備注:其中的id和title為具體的內容

python在mysql在使用fetchall或者是fetchone時,綜合起來講,fetchall返回二維元組(元組中含有元組),fetchone只返回一維元組。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM