如何在python中把数据框插入到mysql表中?

问题描述 投票:0回答:2

我试图运行python脚本从数据框中插入值到mysql表中。但问题是数据框的列与mysql表不一样。我需要有人帮助插入数据。

例子:MySql Table temp:

create table temp ( Table_name varchar(255),
                    Data_set_name varchar(255),
                    Current_Count int,
                    Load_date varchar(255), 
                    Recon_Date varchar(255)
);

Dataframe df:

Master Job Name|Current_Count|Start_time
GRP|32452|04-24-2020 02:14:22
PCYC_VOC_Data_load|24|04-23-2020 09:31:10
IM_XREF_BRIDGE_PROD|3039|04-24-2020 02:04:32

在MySql表temp中的预期结果。

Table_name           Data_set_name    Current_Count   Load_date             Recon_Date
GRP                  Refined          32452           04-24-2020 02:14:22
PCYC_VOC_Data_load   Refined          24              04-23-2020 09:31:10
IM_XREF_BRIDGE_PROD  Refined          3039            04-24-2020 02:04:32

如果你需要任何信息,请告诉我。

python mysql pandas dataframe
2个回答
1
投票

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

与MySQLdb连接

from pandas.io import sql
import MySQLdb

con = MySQLdb.connect() 

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

仔细使用 如果表存在,因为如果你说替换它将:放弃它,重新创建它,并插入数据。

你可以尝试:追加。如果表存在,插入数据。如果不存在,则创建。


一旦你完成了这些,你将有SQL表与df数据。你可以在以后改变列名

© www.soinside.com 2019 - 2024. All rights reserved.