从mysql数据库取数据:fetchone()、fetchall() fetchmany()

本文介绍了从MySQL数据库获取数据的三种方法:fetchone(), fetchall() 和 fetchmany()。fetchone()返回一条记录或None,fetchall()返回所有记录的二维元组,fetchmany(num)则按指定数量返回记录。根据查询结果的数量,这些函数的使用方式有所不同。" 107944667,9164052,Jupyter Notebook 自定义主题与字体设置,"['Python', '可视化', '深度学习', 'PyTorch']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近碰到需要从mysql数据库取数据的操作,记一下使用到的函数:
从mysql数据库取数据用到的三个函数:
fetchone() :
返回单个的元组,也就是一条记录(row),如果没有结果 则返回 None

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

fetchmany(num):
同fetchall一样,只不过返回的是指定个数的元组。

self.cursor.execute("select article_title from article where article_title != 0 ")
# all_data = self.cursor.fetchmany(6)  # 测试用fetchmany()
all_data = self.cursor.fetchall()  # 实现用fetchall()
print(all_data)
# 将内容content保存到文件中
for data in all_data:
    print(data[0])  # data[0] 就是 all_data里面的第一个 article_title 元素
    sql = "select article_title, article_tags, article_content, big_category, small_category from article where article_title=%s"
    para = str(data[0])
    self.cursor.execute(sql, para)
    time.sleep(1)
    # one_data = self.cursor.fetchall()
    # one_data = self.cursor.fetchmany(1)  # 测试结果:fetchmanny、fetchall为二维元组
    one_data = self.cursor.fetchone()  # fetchone为一位元组
    print(one_data)

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

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

cursor.fetchmany(num) :将返回num个结果,返回二维元组
cursor.fetchmany(6) :将返回6个结果,返回二维元组

cursor.fetchall() :将返回所有结果,返回二维元组,如((‘a’,‘b’),(‘a2’,b2’)),


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

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

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

cursor.fetchmany(1) :因为只有一条数据,所以必须要指定num为 1,返回值和fetchall一样,返回二维元组。

参考地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值