python 从csv读数据到mysql的实例

yizhihongxing

Python 从 CSV 读数据到 MySQL 的实例

本文将分享如何使用 Python 读取 CSV 文件并将数据存储到 MySQL 数据库中的完整攻略。我们将使用 Python 中的 Pandas 库读取和处理 CSV 文件,并使用 PyMySQL 库将数据写入到 MySQL 数据库中。

步骤1:准备工作

首先,需要安装以下两个库:

pip install pandas
pip install pymysql

步骤2:创建数据库表

在 MySQL 中创建一个表,确保其包含 CSV 文件中列具有相同的名称和数据类型。以下是一个示例表:

CREATE TABLE test_table (
  id INT(11) NOT NULL AUTO_INCREMENT,
  name VARCHAR(255) NOT NULL,
  age INT(11) NOT NULL,
  PRIMARY KEY (id)
)

步骤3:读取 CSV 文件

在 Python 中使用 Pandas 库读取 CSV 文件。

示例1:

import pandas as pd
df = pd.read_csv('data.csv')
print(df.head())

此代码将读取名为 data.csv 的 CSV 文件。 df.head() 用于仅显示前五行数据。您可以根据需要使用其他选项来更改其默认值。

示例2:

import pandas as pd
df = pd.read_csv('data.csv', sep=';', header=None)
print(df.head())

此代码将读取名为 data.csv 的 CSV 文件,并在分号分隔符下处理数据。header=None 选项将告诉 Pandas 库没有标题行,以便数据正确处理。

步骤4:将数据写入 MySQL

使用 PyMySQL 库将 Pandas 数据框中的数据写入到 MySQL 数据库中。将必要信息(MySQL 连接详细信息)添加到您的 Python 代码中。以下是一个示例:

import pandas as pd
import pymysql

# 设置数据库连接信息
db_connection = pymysql.connect(host='localhost',
                                user='root',
                                password='rootpassword',
                                db='test_db')

# 读取 CSV 文件
df = pd.read_csv('data.csv')

try:
    # 获取 cursor 游标
    with db_connection.cursor() as cursor:
        # 构建 SQL 语句并执行
        for index, row in df.iterrows():
            sql = "INSERT INTO test_table (name, age) VALUES (%s, %s)"
            cursor.execute(sql, (row['Name'], row['Age']))
    # 提交数据
    db_connection.commit()

finally:
    # 关闭数据库连接
    db_connection.close()

该代码将读取名为data.csv的 CSV文件,并将其插入到用于创建数据库表的名称为“test_table”的表中的“Name”和“Age”列中。您可以根据需要更改列名和表名。

这是一个带有错误处理的完整实例。请确保在执行此代码之前更改所需的 MySQL 连接信息。

import pandas as pd
import pymysql

# 设置数据库连接信息
db_connection = pymysql.connect(host='localhost',
                                user='root',
                                password='rootpassword',
                                db='test_db')

# 读取 CSV 文件
try:
    df = pd.read_csv('data.csv')

    # 获取 cursor 游标
    with db_connection.cursor() as cursor:
        # 构建 SQL 语句并执行
        for index, row in df.iterrows():
            sql = "INSERT INTO test_table (name, age) VALUES (%s, %s)"
            cursor.execute(sql, (row['Name'], row['Age']))
    # 提交数据
    db_connection.commit()

except Exception as e:
    # 输出错误信息
    print("Error! ", str(e))

finally:
    # 关闭数据库连接
    db_connection.close()

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 从csv读数据到mysql的实例 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python httplib模块使用实例

    下面就来详细讲解Python httplib模块使用实例的攻略。 什么是httplib模块? httplib是Python自带的HTTP客户端库,提供了HTTP协议相关的请求和响应处理功能。 httplib模块的使用方法 发送GET请求 使用httplib发送GET请求可以通过以下步骤进行: 引入httplib模块 python import httplib…

    python 2023年6月3日
    00
  • 使用Python进行目录的对比方法

    使用Python进行目录对比可以使用os和filecmp标准库的方法进行实现。 首先,导入os和filecmp模块: import os import filecmp 接下来,使用os.walk()函数遍历目录,读取其中的文件和子目录: def get_directory_contents(path): files = [] subdirs = [] for…

    python 2023年6月2日
    00
  • Python时间操作之pytz模块使用详解

    Python时间操作之pytz模块使用详解 介绍 Python内置模块datetime提供了便捷的日期和时间相关操作。但是在处理多个地区或者国家的时间时,我们需要使用到更高效更准确的时间工具。pytz是Python中一个很好的时区支持库,它基于世界时(UTC)并与Olson数据库对应,可以在所有主要操作系统和Python版本上使用。 安装 pytz模块已经默…

    python 2023年6月2日
    00
  • 正则表达式同时匹配中英文及常用正则表达式

    以下是详细讲解“正则表达式同时匹配中英文及常用正则表达式”的完整攻略。 正则表达同时匹配中英文 在正则表达式中,我们可以使用Unicode字符集来匹配中文字符。具体来说,我们可以使用\4e00-\u9fa5表示匹配中文字符。下面是一个示例,演示如何同时匹配中英文: import re text = "Hello 你好 World" pat…

    python 2023年5月14日
    00
  • python函数实例万花筒实现过程

    下面我将详细讲解 “Python函数实例万花筒” 的实现过程。 什么是 “Python函数实例万花筒” “Python函数实例万花筒” 是一种通过函数实现不同效果的代码组合。该技巧可以更好地组织代码,并避免相似功能代码的重复编写。通过改变函数的参数、输入、输出等,可以让该技巧适用于更多的应用场景。 实现步骤 步骤 1:定义函数 首先需要定义不同的函数,这些函…

    python 2023年5月19日
    00
  • Python转换itertools.chain对象为数组的方法

    首先,需要了解itertools.chain对象的概念。itertools.chain是一个迭代器工具,将多个迭代对象连接成一个序列,返回一个包含所有元素的迭代器。但是,如果想要将itertools.chain对象转换成数组,可以使用以下方式。 方法一:使用list构造函数 使用list构造函数可以将迭代器转换成数组,因此可以使用list函数将itertoo…

    python 2023年6月3日
    00
  • python向MySQL数据库插入数据的操作方法

    下面是Python向MySQL数据库插入数据的操作方法的完整攻略。 1. 准备工作 在开始之前,请确保已经完成以下准备工作: 安装好MySQL数据库 安装Python的MySQL库,可以使用pip安装:pip install mysql-connector-python 2. 建立连接 首先需要创建一个连接对象,用于连接到MySQL数据库。可以使用mysql…

    python 2023年5月14日
    00
  • 利用Python中的内置open函数读取二进制文件

    读取二进制文件可以使用Python内置的open函数,通过指定读取模式’rb’,来读取文件的二进制数据。 下面是利用Python中的内置open函数读取二进制文件的完整攻略: 1. 打开二进制文件 使用open函数打开二进制文件,可以指定打开模式为’rb’,代码示例: with open(‘test.bin’, ‘rb’) as f: # f为文件对象,可以…

    python 2023年6月2日
    00
合作推广
合作推广
分享本页
返回顶部