如何使用executemany
一次在我的mysql
数据库中插入newDF
x=[
[[3141],[3141],[3169],[3251],[3285],[3302]],
[[5000],[3141],[3169],[3251],[3285],[3302]]
]
y=[
[[5],[7],[5],[2],[3],[8]],
[[6],[5],[6],[5],[3],[6]]
]
newDF=pd.DataFrame()
newDF[['x']]=x
newDF[['y']]=y`
sql = "INSERT INTO new_table (`x`,`y`) VALUES (?,?)" number_of_rows = cursor.executemany(sql,list(np.int64(newDF)))
答案 0 :(得分:1)
我不熟悉executemany。但是,我已经成功使用了pandas.dataframe.to_sql。你可以找到here。就我而言,我使用sqlalchemy和pymysql库来实现这一目标。
这不是真正的代码,但应该是一个合理的大纲;将m视为数据帧:
import numpy as np
import pandas as pd
import pymysql as mysql
import sqlalchemy
from sqlalchemy import create_engine
from pandas.io import sql
engine=create_engine('mysql+pymysql://username:password@host:port/db_name')
m.to_sql('table_name', engine, if_exists='append')