python 从csv读数据到mysql的实例

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列表与元组详解实例

    以下是“Python列表与元组详解实例”的完整攻略。 1. 列表和元组的概述 列表和元组都是Python中常用的结构。它们都可以用于存储多元素,但它们之间有些重要的区别。列表是可变的,可以添加、删除和修改元素,而元组是不可变的,一旦创建就不能修改。 2. 列表的实现 2.1 创建列表 我们可以使用方括号[]来创建一个空列表,或者在括号中添加元素来创建一个非空…

    python 2023年5月13日
    00
  • Python graphql websocket订阅客户端

    【问题标题】:Python graphql websocket subscription clientPython graphql websocket订阅客户端 【发布时间】:2023-04-03 15:06:01 【问题描述】: 我正在开始一个测试项目,我需要验证来自 python 测试框架的 graphql websocket 订阅数据。通常我只会编写自…

    Python开发 2023年4月8日
    00
  • Python随机生成8位密码的示例详解

    下面我将详细讲解“Python随机生成8位密码的示例详解”的完整攻略: 1. 需求分析 在开始编写代码之前,我们需要确定我们要实现的功能。 根据题目要求,我们需要实现一个程序,该程序需要能够随机生成8位密码。同时,这道题还要求密码中需要包含大小写字母、数字及一些特殊字符。 因此,我们需要使用Python内置的random库来生成随机数,然后从预定义的字符集中…

    python 2023年6月3日
    00
  • mac在matplotlib中显示中文的操作方法

    下面是在Mac上使用matplotlib显示中文的方法: 方法一:设置字体 步骤一:下载中文字体 在macOS系统中自带的中文字体较少,因此我们需要下载其他中文字体。可以从 这里 获取常用的中文字体,例如思源黑体和华文细黑。 步骤二:配置matplotlib 在绘图之前,需要在代码中设置字体,这可以通过以下两种方式实现: 直接指定字体路径 “`python…

    python 2023年5月20日
    00
  • python读取word 中指定位置的表格及表格数据

    以下是Python读取Word中指定位置的表格及表格数据的完整实例教程,过程中包含两个示例说明。 1. 导入必要的模块 我们需要使用python-docx模块来读取Word文档的表格。可以通过pip命令进行安装: pip install python-docx 导入模块的代码如下: import docx 2. 打开Word文档并读取表格 我们使用docx模…

    python 2023年5月13日
    00
  • python实现中文输出的两种方法

    这里就为你详细讲解一下Python实现中文输出的两种方法,包含两个示例。 方法一:使用unicode字符串 在Python 2中,可以使用unicode字符串来输出中文。 首先在文件开头添加 # coding=utf-8,表示该文件使用utf-8编码。 然后使用u前缀来标记一个字符串为unicode字符串,例如: # coding=utf-8 name = …

    python 2023年6月3日
    00
  • python字典添加值的方法及实例代码分享

    当我们在Python中使用字典时,我们将经常想要向字典添加一个键值对(key-value pair)。Python提供了许多不同的方法可以使用,以便向字典中添加一个键值对。 字典添加值的方法 以下是向Python字典中添加键值对的几种方法。 直接添加键值对 我们可以使用以下方式直接向字典添加键值对: d = {"name": "…

    python 2023年5月13日
    00
  • 解决Tensorflow安装成功,但在导入时报错的问题

    当在导入TensorFlow时遇到错误,可能是由于环境配置或版本不兼容等原因导致的。下面是解决TensorFlow安装成功但在导入时错的完整攻略: 1. 确认TensorFlow版本和版本是否兼容 TensorFlow的不同版本需要不同的Python版本支持。在安装TensorFlow之前,应该先TensorFlow版本和Python是否兼容。可以在Tens…

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