Uppdatering:
Det finns nu en to_sql
metod, vilket är det föredragna sättet att göra detta, snarare än write_frame
:
df.to_sql(con=con, name='table_name_for_df', if_exists='replace', flavor='mysql')
Observera:syntaxen kan ändras i pandas 0.14...
Du kan ställa in anslutningen med MySQLdb :
from pandas.io import sql
import MySQLdb
con = MySQLdb.connect() # may need to add some other options to connect
Ställa in flavor
av write_frame
till 'mysql'
betyder att du kan skriva till mysql:
sql.write_frame(df, con=con, name='table_name_for_df',
if_exists='replace', flavor='mysql')
Argumentet if_exists
talar om för pandor hur de ska hantera om bordet redan finns:
if_exists: {'fail', 'replace', 'append'}
, standard'fail'
fail
:Om en tabell finns, gör ingenting.
replace
:Om en tabell finns, släpp den, återskapa den och infoga data.
append
:Om tabell finns, infoga data. Skapa om inte finns.
Även om write_frame
dokument
föreslår för närvarande att det bara fungerar på sqlite, mysql verkar stödjas och det finns faktiskt en hel del mysql-testning i kodbasen
.