Aktualizacja:
Istnieje teraz to_sql
metoda, która jest preferowanym sposobem, aby to zrobić, a nie write_frame
:
df.to_sql(con=con, name='table_name_for_df', if_exists='replace', flavor='mysql')
Pamiętaj też:składnia może się zmienić w pandach 0.14...
Możesz skonfigurować połączenie za pomocą MySQLdb :
from pandas.io import sql
import MySQLdb
con = MySQLdb.connect() # may need to add some other options to connect
Ustawianie flavor
z write_frame
do 'mysql'
oznacza, że możesz pisać do mysql:
sql.write_frame(df, con=con, name='table_name_for_df',
if_exists='replace', flavor='mysql')
Argument if_exists
mówi pandom, jak sobie radzić, jeśli stół już istnieje:
if_exists: {'fail', 'replace', 'append'}
, domyślny 'fail'
fail
:Jeśli tabela istnieje, nic nie rób.
replace
:Jeśli tabela istnieje, usuń ją, utwórz ponownie i wstaw dane.
append
:Jeśli tabela istnieje, wstaw dane. Utwórz, jeśli nie istnieje.
Chociaż write_frame
dokumenty
obecnie sugerujemy, że działa tylko na sqlite, mysql wydaje się być obsługiwany i w rzeczywistości jest sporo testowanie mysql w bazie kodu
.