pymysql游标获取多行

pymysql cursor fetch multiple rows

我想显示数据库中 2 人一组的用户列表,我可以让它显示前两个,然后 returns 到主菜单。如果它滚动浏览所有数据库,我更愿意一次显示两行而不是只显示前两行。我的代码哪里出错了,是否可以通过所有用户将 fetchmany 循环到 运行?

sql = ('Select * from user;')  
cursor.execute(sql)
data = cursor.fetchmany(size=2)
for row in data:
        print (row["userID"],":",  row["username"], ":", row["age"])

已编辑: 您可以使用 fetchall 方法获取静态列表并遍历它。

sql = ('Select * from user;')  
cursor.execute(sql)
data = cursor.fetchall()
for i in range(0, len(data), 2):
    for row in data[i:i+2]:
        print(row["userID"],":",  row["username"], ":", row["age"])
    input()  # to display two rows per enter key press