Python数据库查询操作:fetchone、fetchall与rowcount详解

Jasper
Jasper
发布时间:2026-10-15 | 5人浏览过
原创

本文详细解析Python执行数据库查询的三大核心方法:fetchone用于获取单条结果,fetchall用于获取全部结果,rowcount返回受影响的行数。结合PyMySQL和MySQLdb库的完整代码示例,演示如何连接数据库、执行SQL语句并处理查询结果,帮助开发者掌握Python数据库交互的关键技术。

Python数据库查询核心方法解析

1、fetchone:该方法用于获取查询结果集中的下一条记录,返回的数据类型为一个对象。

2、fetchall:该方法用于接收并返回查询结果集中的所有剩余行,通常以列表形式呈现。

3、rowcount:这是一个只读属性,用于返回执行execute方法后所影响的行数,常用于判断操作是否成功或统计结果数量。

Python数据库查询完整代码示例

实例


from pymysql import *
 
def main():
    # 创建Connection连接
    conn = connect(host='localhost',port=3306,user='root',password='mysql',database='jing_dong',charset='utf8')
    # 获得Cursor对象
    cs1 = conn.cursor()
    # 执行select语句,并返回受影响的行数:查询一条数据
    count = cs1.execute('select id,name from goods where id>=4')
    # 打印受影响的行数
    print("查询到%d条数据:" % count)
 
    for i in range(count):
        # 获取查询的结果
        result = cs1.fetchone()
        # 打印查询的结果
        print(result)  # 元组 (1, '张三', 20, '男')
        # 获取查询的结果
 
    # 关闭Cursor对象
    cs1.close()
    conn.close()

if __name__ == '__main__':
    main()

实例扩展:


#! /usr/bin/python
# filename  conn.py
import MySQLdb         # 载入连接数据库模块  
try:              # 尝试连接数据库
    conn = MySQLdb.connect("localhost","root","www","yao",charset="utf8")  # 定义连接数据库的信息
except MySQLdb.OperationalError, message:  # 连接失败提示
    print "link error"
 
cursor=conn.cursor()          #定义连接对象
cursor.execute("select * from user")  #使用cursor提供的方法来执行查询语句
data=cursor.fetchall()         #使用fetchall方法返回所有查询结果
print data              #打印查询结果
cursor.close()            #关闭cursor对象
conn.close()             #关闭数据库链接

到此这篇关于python执行数据库的查询操作实例讲解的文章就介绍到这了,更多相关python如何执行数据库查询操作内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表