首页 >数据库 >mysql教程 >如何使用 MySQLdb 将 Pandas DataFrame 插入 MySQL 数据库?

如何使用 MySQLdb 将 Pandas DataFrame 插入 MySQL 数据库?

Barbara Streisand
Barbara Streisand原创
2024-12-06 05:34:11392浏览

How to Insert a Pandas DataFrame into a MySQL Database Using MySQLdb?

通过 MySQLDB 将 Pandas Dataframe 插入数据库

问题:

我们如何使用以下命令直接将整个 pandas 数据帧插入到现有的 MySQL 数据库表中MySQLdb?

答案:

使用 pandas.io.sql 模块中的 write_frame 方法,您可以将数据帧插入 MySQL,如下所示:

sql.write_frame(df, con=con, name='table_name', if_exists='replace',flavor='mysql')

其中:

  • df 是要插入的 pandas 数据框。
  • con 是MySQLdb 连接对象。
  • name 是要插入的表的名称into.
  • if_exists 指定如何处理现有表:

    • 'fail':如果表存在则不执行任何操作。
    • 'replace':在插入数据之前删除表并重新创建它。
    • 'append':将数据插入现有表(如果存在),否则创建它。

使用 to_sql 方法:

现在将数据帧插入 SQL 数据库的首选方法是 to_sql :

df.to_sql(con=con, name='table_name', if_exists='replace',flavor='mysql')

设置 MySQLdb 连接:

建立连接使用 MySQLdb 到 MySQL:

from pandas.io import sql
import MySQLdb

con = MySQLdb.connect()

示例代码:

对于具有 ID、data1 和 的表data2 列,​​插入相应数据框的 Python 脚本为:

import pandas as pd
导入 MySQLdb

df = pd.DataFrame({'ID': [1, 2, 3], 'data1': ['a', 'b', 'c'], ' data2': [10, 20, 30]})

con = MySQLdb.connect()
sql.write_frame(df, con=con, name='table_name', if_exists='replace',flavor='mysql')

以上是如何使用 MySQLdb 将 Pandas DataFrame 插入 MySQL 数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn