python|查询数据库中fetchone()函数、fetchall()函数、fetchmany()的区别及用法

fetchone() :

返回单个的元组,也就是一条记录(row),如果没有结果 则返回 None

用法:

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

将只取最上面的第一条结果,返回单个元组如(‘id’,‘title’),然后多次使用cursor.fetchone(),依次取得下一条结果,直到为空。

fetchall() :

返回多个元组,即返回多个记录(rows),如果没有结果 则返回 ()

cur.execute("select * from user")

将返回所有结果,返回二维元组,如((‘id’,‘title’),(‘id’,‘title’)),

fetchmany()

获取前n行数据
row_2 = cursor.fetchmany(3) 获取前三行数据,元组包含元组

注意:

如果select本身取的时候只有一条数据时:

cursor.fetchone():将只返回一条结果,返回单个元组如(‘id’,‘title’)。

cursor.fetchall() :也将返回所有结果,返回二维元组,如((‘id’,‘title’),),

fetchall返回二维元组(元组中含有元组),fetchone只返回一维元组。

在MySQL中是NULL,而在Python中则是None

你可能感兴趣的:(Python,#,MySQL)