我试图运行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
如果你需要任何信息,请告诉我。
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数据。你可以在以后改变列名