UserWarning: Previous unbuffered result was left incomplete

UserWarning: Previous unbuffered result was left incomplete

循环插入和查询中使用 fetchone() 报错

fetchone() :

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

fetchall() :

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

 

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

执行cursor.execute(sql)语句后,cursor指向第一条记录之前的位置。

          执行cursor.fetchone()语句之后,fetchone()方法返回cursor指向的下一条记录,同时cursor指向当前记录的下一条记录。

    当cursor已经指向最后一条记录时,再次执行cursor.fetchone()语句后,结果返回None,cursor不再向前移动。

 

如果mysql执行语句结果的查询集只有一行数据,是不能调用两次self.cursor.fetchone()的,也就是说,第二次调用根本不可能有结果。

你可能感兴趣的:(UserWarning: Previous unbuffered result was left incomplete)