sql >> Databasteknik >  >> RDS >> Mysql

Hur infogar man pandas dataram via mysqldb i databasen?

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 .



  1. Hur kan jag få summan av flera datetime-värden?

  2. Kan en Android-app ansluta direkt till en online mysql-databas

  3. Hur ändrar man negativt värde till positivt i Oracle?

  4. 2 sätt att ta bort dubbletter av rader i Oracle