Quando usi sqlalchemy, dovresti passare il motore e non la connessione grezza:
engine = create_engine("mysql+mysqldb://...")
df.to_sql('demand_forecast_t', engine, if_exists='replace', index=False)
Scrivere su MySQL senza sqlalchemy (quindi specificando flavor='mysql'
) è deprecato.
Quando il problema è che hai un frame troppo grande per scrivere contemporaneamente, puoi usare il chunksize
parola chiave (vedi docstring
). Es.:
df.to_sql('demand_forecast_t', engine, if_exists='replace', chunksize=10000)