欢迎访问宙启技术站
智能推送

使用pymysql在Python中实现数据库表的数据导入导出

发布时间:2023-12-18 19:41:24

pymysql是Python中一个常用的MySQL数据库连接库,可以方便地实现数据库表的数据导入和导出。下面将介绍如何使用pymysql来实现这两个功能,并给出相应的使用例子。

一、数据导入:

数据导入是指将一个文件中的数据导入到数据库表中。以下是一个使用pymysql实现数据导入的示例代码:

import pymysql

# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='test')
cursor = conn.cursor()

# 打开文件并读取数据
with open('data.txt', 'r') as file:
    data = file.readlines()

# 将数据逐行插入到数据库表中
for line in data:
    line = line.strip().split(',')
    sql = "INSERT INTO tablename (col1, col2, col3) VALUES (%s, %s, %s)"
    cursor.execute(sql, (line[0], line[1], line[2]))
    conn.commit()

# 关闭数据库连接
cursor.close()
conn.close()

在上述示例中,我们首先通过pymysql库连接到MySQL数据库。然后,我们打开一个文件(假设为data.txt),然后逐行将数据插入到数据库表中。这里假设数据库表的列名为col1、col2和col3。

二、数据导出:

数据导出是指将数据库表中的数据导出到一个文件中。以下是一个使用pymysql实现数据导出的示例代码:

import pymysql

# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='password', db='test')
cursor = conn.cursor()

# 查询表中所有数据
sql = "SELECT * FROM tablename"
cursor.execute(sql)
data = cursor.fetchall()

# 将数据写入文件
with open('data.txt', 'w') as file:
    for row in data:
        file.write(','.join(str(col) for col in row) + '
')

# 关闭数据库连接
cursor.close()
conn.close()

在上述示例中,我们首先通过pymysql库连接到MySQL数据库。然后,我们查询数据库表(假设表名为tablename)中的所有数据,并将其保存为一个二维数组。接下来,我们打开一个文件(假设为data.txt),然后逐行将数据写入到文件中。

总结:

通过pymysql库,我们可以很方便地实现数据库表的数据导入和导出功能。在数据导入时,我们首先连接到数据库,然后打开一个文件并读取数据,将数据逐行插入到数据库表中。在数据导出时,我们首先连接到数据库,然后查询数据库表中的数据,将数据逐行写入到一个文件中。以上是pymysql实现数据导入导出的基本步骤和示例代码。根据实际需求,可以对代码进行适当的修改和扩展。