J'ai plusieurs pandas Dataframe
que je souhaite écrire dans un SQL database
. Cependant, étant donné que les SQL database
pourrait ne pas avoir cette particularité column name
qui était dans le pandas Dataframe
j'obtiens un message d'erreur disant que the column in the table was not found, thus unable to append data
.
# Example:
df1
out= column1, column2, column3, column4
value1, value2, value3, value4
df2
out= columnA, columnB, columnC
valueA, valueB, valueC
# Initially I concat the df together and save it into SQL
combined_data = pandas.concat([df1, df2], axis=1,
join='inner')
pandas.DataFrame.to_sql(combined_data, name='table1', con=engine,
if_exists='append', index=False)
Cependant, comme cette table a déjà été créée, avec toutes les colonnes, si df2 devait avoir des colonnes supplémentaires, j'obtiens un message d'erreur.
df2
out= columnA, columnB, columnC, columnD, columnE, columnF
valueA, valueB, valueC, valueD, valueE, valueF
Comment puis-je structurer un code, qui créerait de nouvelles colonnes dans la base de données existante ? SQL table
avec les noms de ces colonnes, comme les noms de colonne manquants de pandas Dataframe
?
Je pense que je peux ajouter de nouvelles colonnes avec la commande suivante sql code
connection.execute("ALTER TABLE table1 ADD COLUMN new_column INTEGER DEFAULT 0")
Mais comment m'assurer que le new_column
qui a été ajouté, suit le nom de la colonne dans df2 ?