9rep - Pandas MySQL
      
      
        
        
        
        
Données SELECT INSERT à l'aide de Pandas (ajout)
- Accédez à MySQL via Pandas
--Insérez CSV dans MySQL avec Pandas
 
import pandas as pd
from sqlalchemy import create_engine
import sqlalchemy as sa
import sys
import datetime
class MySqlPandas():
    def __init__(self):
    		self.engine = create_engine('mysql+pymysql://{USER}:{PASSWORD}@{HOST}:{PORT}/{DB NAME}')
    def sesStoreData(self):
        sql = '''
				SELECT
				    tb.hoge1                       
				,   tb.hoge2                     
				,   tb.hoge3               
				FROM
				    table tb
				;
				'''
        df = pd.read_sql_query(sql, self.engine)
        df.to_csv('ses_table_' + str(datetime.date.today()) + '.tsv', sep='\t')
    def insStoreData(self):
        df_ins = pd.read_csv('all_table.tsv', delimiter='\t')
        df_ins_new = df_ins.rename(columns={'hoge1': 'col1', 'hoge2': 'col2', 'hoge3': 'col3'})
        df_ins_new.to_sql('store_master', self.engine, index=False, if_exists='append') #Le remplacement complet est si_exists='replace'
if __name__ == '__main__':
    myp = MySqlPandas()
    # myp.sesStoreData()sélectionner l'exécution
    myp.insStoreData()Insérer une exécution