可以使用executemany方法将DataFrame中的数据批量插入到MySQL数据库中。以下是一个示例代码:

import mysql.connector
from mysql.connector import Error

# 建立MySQL连接
try:
    conn = mysql.connector.connect(host='localhost',
                                   database='your_database',
                                   user='your_username',
                                   password='your_password')
    if conn.is_connected():
        cursor = conn.cursor()

        # 创建表
        create_table_query = '''CREATE TABLE IF NOT EXISTS your_table (
                                column1 VARCHAR(255),
                                column2 INT,
                                column3 FLOAT)'''
        cursor.execute(create_table_query)
        print("Table created successfully.")

        # 插入数据
        insert_query = '''INSERT INTO your_table (column1, column2, column3) 
                          VALUES (%s, %s, %s)'''
        records_to_insert = [(row['column1'], row['column2'], row['column3'])
                             for _, row in df.iterrows()]
        cursor.executemany(insert_query, records_to_insert)
        conn.commit()
        print("Records inserted successfully.")

except Error as e:
    print("Error while connecting to MySQL", e)

finally:
    if conn.is_connected():
        cursor.close()
        conn.close()
        print("MySQL connection is closed.")

在上面的代码中,首先建立了与MySQL数据库的连接。然后,使用cursor.execute方法创建了一个表(如果表不存在)。接下来,使用iterrows方法遍历DataFrame中的每一行,并将每一行的数据存储在一个列表中。最后,使用cursor.executemany方法批量执行插入操作,并使用conn.commit方法提交更改。最后,关闭连接。

请确保将your_databaseyour_usernameyour_passwordyour_table替换为实际的数据库、用户名、密码和表名。此外,还需要根据实际情况调整表的结构和数据类型

python df 插入数据到mysql executemany

原文地址: http://www.cveoy.top/t/topic/h05O 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录