python3 -- pymysql fetch0ne fetchall fetchmany的用法

1、fetchall()

# 连接数据库
def main():

    # 连接数据库
    db = pymysql.connect(host='192.168.0.1', port=3306, user='root', 
                        password='root', db='user', charset='utf8')

    print('连接数据库')
    print('开始数据查询')
    
    # 执行方法
    query_(db)
    
    print('结束数据库查询')
    # 关闭数据库连接
    db.close()
    print('关闭数据库')

# 查询
def query_(db): # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # sql查询语句 sql = "select user_info from user_info where user_id=1" # 执行 SQL 查询, 返回受影响的行数 row_count = cursor.execute(sql) # 获取数据 results_db = cursor.fetchall() # results_db 类型:元祖;eg:((字段1, 字段2, 字段。。。, 字段n), (), ... ()) # 转储至文件的结果集合 res_lst = [] if results_db: # 计数 count = 0 # 遍历处理 for row in results_db: # 计数自增 count += 1
       # 处理逻辑
        # 汇总至结果集 res_lst.append(row) else: print('数据库查询结果为空') # 关闭查询 cursor.close()

2、fetchone():

# 连接数据库
def main():

    # 连接数据库
    db = pymysql.connect(host='192.168.11.1', port=3306, user='root', 
                        password='root', db='user', charset='utf8')

    print('连接数据库')
    print('开始数据查询')
    
    # 执行方法
    query_(db)
    
    print('结束数据库查询')
    # 关闭数据库连接
    db.close()
    print('关闭数据库')

# 查询处理
def query_(db):
    # 使用 cursor() 方法创建一个游标对象 cursor
    cursor = db.cursor()

    # sql查询语句
    sql = "select user_id from user_info where user_id=1"

    # 执行 SQL 查询
    row_count = cursor.execute(sql)

    # 获取数据行数
    print("查询到%d条数据:" % row_count)
    
    with open("all_field_bak", 'w', encoding='utf8') as f:
        writer = csv.writer(f)

        for i in range(row_count):
            # 获取查询结果
            res = cursor.fetchone()
            #print(res)
            #print(type(res))

            # 写入文件
            writer.writerow(res)

    # 关闭查询
    cursor.close()
原文地址:https://www.cnblogs.com/gengyufei/p/12870349.html