python连接MySQL数据库并读取数据库中的数据表存入list中

2023年1月30日12:29:48

1 Python3安装pymysql第三方模块

  • Python2中是MySQLdb模块。
  • Python3中没有MySQLdb模块了,所以使用pymysql
conda install pymysql

2 操作Mysql数据库

  1. 创建连接,指定数据库的ip地址,账号、密码、端口号、要操作的数据库、字符集
  2. 创建游标
  3. 执行sql
  4. 获取结果
  5. 关闭游标
  6. 连接关闭

详细可参考:https://www.cnblogs.com/hwtfamily/p/8982836.html

3 封装成函数调用

以下代码亲测可用,配有详细注释:

# -*- coding:utf-8 -*-
# 从MySQL数据库的数据表中读取每一行数据放入列表中,最后返回一个完整的列表

import pymysql

def get_mysql_list(database,table_name):
    #  创建连接,指定数据库的ip地址,账号、密码、端口号、要操作的数据库、字符集
    host,user,pwd = 'ip','root',''
    conn = pymysql.connect(host=host, user=user, passwd=pwd, db=database, port=3306, charset='utf8')    # port必须写int类型,MySQL的默认端口为3306. charset必须写utf8
    # 创建游标
    cursor = conn.cursor()
    # 执行sql语句
    sql = 'select * from %s ;' % table_name
    cursor.execute(sql)

    # 获取到sql执行的全部结果
    results = cursor.fetchall()
    table_list = []
    for r in results:
        table_list.append(list(r))  # 由于fetchall方法返回的一个元组,需要每一行为列表形式的数据,将其转换为list类型。

    cursor.close()  #关闭游标
    conn.close()    #关闭连接
    
    return list(table_list) # 返回一个完整的列表数据


if __name__ == '__main__':
    x=get_mysql_list('spidersData', '词典')
    print(x)

  • 作者:StriveQueen
  • 原文链接:https://blog.csdn.net/strivequeen/article/details/113037694
    更新时间:2023年1月30日12:29:48 ,共 948 字。