使用python中的pymysql库,并且转化为数组元组数据

目录

安装pymysql

编写read_mysql_data_by_pymsql.py

编写一个读取mysql,并且转化为元组的工具类


安装pymysql

  1. pip install pymysql

编写read_mysql_data_by_pymsql.py

  1. python 复制代码
    # 导入包
    import pymysql
    
    # 配置数据库连接数据
    mysql_ip_address ="127.0.0.1"
    mysql_user = "root"
    mysql_password = "root"
    mysql_database = "myst"
    mysql_port = 3306
    mysql_charset = "utf8"
    
    # sql语句
    sql_string = "select * from user"
    
    # 装填数据
    mysql_connect = pymysql.connect(
        host=mysql_ip_address,
        port=mysql_port,
        user=mysql_user,
        password=mysql_password,
        database=mysql_database,
        charset=mysql_charset,
    )
    
    # 获取游标
    cursor = mysql_connect.cursor()
    # 执行sql
    cursor.execute(sql_string)
    # 读取数据
    read_mysql_data =  cursor.fetchall()
    
    # 存放数据
    print(list(read_mysql_data))
    
    print(read_mysql_data)
  2. cursor.execute(sql) 执行完毕之后,然后使用list(result) 进行数据转化

  3. 运行结果

    1. 可以看到数据库中的数据已经成功读取了,并且转化为元组了

编写一个读取mysql,并且转化为元组的工具类

  1. python 复制代码
    # 导入包
    import pymysql
    
    # 配置数据库连接数据
    mysql_ip_address ="127.0.0.1"
    mysql_user = "root"
    mysql_password = "root"
    mysql_database = "myst"
    mysql_port = 3306
    mysql_charset = "utf8"
    query_sql = "select * from user"
    def read_mysql_data(host=mysql_ip_address,
                        port=mysql_port,
                        charset=mysql_charset,
                        user=mysql_user,
                        password=mysql_password,
                        database=mysql_database,
                        query_sql = query_sql):
    
        try:
            # 装填数据
            mysql_connect = pymysql.connect(
                host=host,
                port=port,
                user=user,
                password=password,
                database=database,
                charset=charset,
            )
    
            # 获取游标
            cursor = mysql_connect.cursor()
            # 执行sql
            cursor.execute(query_sql)
            # 读取数据
            mysql_from_data_list = cursor.fetchall()
            # 关闭游标
            cursor.close()
            # 关闭连接
            mysql_connect.close()
        except Exception as e:
            print(e)
        
        return list(mysql_from_data_list)
        
    
    print(read_mysql_data())
    1. 可以在工具类上面编写自己数据库的参数

    2. 也可以在使用工具时自动填写相关数据

    3. 复制代码
    4. 可以在使用的时候填入sql,这里就不在测试了

    5. 可以在进行执行的时候传入mysql的连接配置,也可以不传入,函数中传入的mysql配置优先级肯定是最高的,执行不同的sql需要从外部传入,这里默认写了一乐,这个是必须填写的参数。

      1. 这里使用了try-except捕捉异样
相关推荐
是立不是利14 分钟前
大文件导致请求被拒的连锁反应
开发语言·前端·javascript
ynchyong16 分钟前
SQLAlchemy 更新操作:values() 与 ordered_values() 的隐藏差异
python·sqlalchemy·update·values·ordered_values
statistican_ABin30 分钟前
中国互联网与数字生活分析报告—基于1990-2023年世界银行互联网数据的多维度分析
python
野生技术架构师32 分钟前
1200 道 JAVA 面试题(各大企业常见面试题及答案)
java·开发语言
“AI国潮设计-小江”42 分钟前
【Python/SDXL实战】潮汕国潮IP视觉落地:普宁美食猫IP & 创意甜品设计(附ComfyUI工作流思路)
开发语言·人工智能·python·prompt·aigc
Yyyyyy~1 小时前
【java】类和对象
java·开发语言
Allen_LVyingbo1 小时前
医疗人工智能项目全生命周期管理系统:监管知识建模、工程实现与实证评估(下)
大数据·数据库·人工智能·python·自然语言处理·自动化
草莓熊Lotso1 小时前
【Redis 进阶】主从复制深度解析:从配置落地到 PSYNC 同步原理
linux·开发语言·网络·数据库·redis·缓存·php
wuhuhuan1 小时前
Case Generator 平台升级
python·测试工具·自动化
RobinDevNotes1 小时前
用 Profile 揪出大模型训练性能瓶颈
python·性能优化