Aggiornamento:
Ora esiste un to_sql
metodo, che è il modo preferito per farlo, piuttosto che write_frame
:
df.to_sql(con=con, name='table_name_for_df', if_exists='replace', flavor='mysql')
Nota inoltre:la sintassi potrebbe cambiare in Pandas 0.14...
Puoi impostare la connessione con MySQLdb :
from pandas.io import sql
import MySQLdb
con = MySQLdb.connect() # may need to add some other options to connect
Impostazione del flavor
di write_frame
a 'mysql'
significa che puoi scrivere su mysql:
sql.write_frame(df, con=con, name='table_name_for_df',
if_exists='replace', flavor='mysql')
L'argomento if_exists
dice ai panda come trattare se il tavolo esiste già:
if_exists: {'fail', 'replace', 'append'}
, predefinito 'fail'
fail
:se la tabella esiste, non fare nulla.
replace
:se la tabella esiste, rilasciala, ricreala e inserisci i dati.
append
:Se la tabella esiste, inserire i dati. Crea se non esiste.
Sebbene write_frame
documenti
attualmente suggerisce che funzioni solo su sqlite, mysql sembra essere supportato e in effetti c'è un bel po' di test di MySQL nella base di codice
.