#12 DB/Pandas PostgreSQL アウトプット
Pandasの領域に引き込んで処理をしたので、DBに返します。こんどはPostgreSQLの領域に返します。
まず、PostgreSQLにデータベースを作っていきます。pgAdmin4を使います。localhostにデータベースを作ります。名前はpandas_postgresとでもしておきます。
Databaseを右クリック⇒Createからデータベースを作成します。
中のテーブルは作成しなくても大丈夫です。
import pandas as pd
from sqlalchemy import create_engine
df1 = pd.read_csv("df1.csv")
df2 = pd.read_csv("df2.csv")
engine=create_engine("postgresql://postgres:pass@localhost:5432/pandas_postgres")
df1.to_sql("score", engine, if_exists="replace", index=False)
df2.to_sql("users", engine, if_exists="replace", index=False)
to_sqlコマンドにより、postgreSQLにかかれます。
if_exists="replace"
ここでappendにすると、上書きされます。replaceの場合、同じデータが入ります。プライマリーキーを設定すると、エラーになります。
つまり、一括ですべてのデータを入れるとき、毎回書き換えなきゃいけないので単独で、該当データだけ処理したほうがいい。