Mise à jour :
Il y a maintenant un to_sql
méthode, qui est la méthode préférée pour le faire, plutôt que write_frame
:
df.to_sql(con=con, name='table_name_for_df', if_exists='replace', flavor='mysql')
Remarque :la syntaxe peut changer dans pandas 0.14...
Vous pouvez configurer la connexion avec MySQLdb :
from pandas.io import sql
import MySQLdb
con = MySQLdb.connect() # may need to add some other options to connect
Définition de la flavor
de write_frame
à 'mysql'
signifie que vous pouvez écrire dans mysql :
sql.write_frame(df, con=con, name='table_name_for_df',
if_exists='replace', flavor='mysql')
L'argument if_exists
indique aux pandas comment traiter si la table existe déjà :
if_exists: {'fail', 'replace', 'append'}
, par défaut'fail'
fail
:Si le tableau existe, ne rien faire.
replace
:Si le tableau existe, supprimez-le, recréez-le et insérez des données.
append
:Si la table existe, insérez des données. Créer si n'existe pas.
Bien que le write_frame
documentation
suggèrent actuellement que cela ne fonctionne que sur sqlite, mysql semble être pris en charge et en fait il y a pas mal de test mysql dans la base de code
.