HerokuでPostgreSQLの読み書き削除
はじめに
HerokuでPostgreSQLに接続・操作するにはどうすれば良いのでしょう?
テーブルの読み・書き・削除の方法を紹介します。
目次
1, 接続用のユーザ情報を設定
PostgreSQL接続のため、ユーザ名やパスワード等を予め取得しましょう。
こちらの記事を参考に、ユーザ情報を参照・取得してください。
cream-kuchen.hatenablog.com
※ 記事中の下記設定 connection_config が必要です。
2, 読み込み
Pandasデータフレームとして下記のコード例でテーブルを読み込めます。
import pandas as pd import psycopg2 connection = psycopg2.connect(**connection_config) df = pd.read_sql(sql='SELECT * FROM table_name;', con=connection)
※ 最終行ののSELECT文 [ * ] や、テーブル名 [ table_name ] を適宜書き換えてください。
3, 書き込み
Pandasデータフレームを下記のコード例でテーブルに書き込めます。
import pandas as pd import psycopg2 from sqlalchemy import create_engine engine = create_engine('postgresql://{user}:{password}@{host}:{port}/{database}'.format(**connection_config)) df.to_sql('table_name', con=engine, if_exists='replace', index=False)
※ 最終行のテーブル名 [ table_name ] や、書き込み方法 [ replace ] を適宜書き換えてください。
※ 書き込み方法には、replaceの他にappendなどがあります。
pandas.DataFrame.to_sql — pandas 1.1.3 documentation
4, 削除
下記のコード例でテーブルを削除できます。
import psycopg2 connection = psycopg2.connect(**connection_config) with connection as conn: with conn.cursor() as cur: cur.execute('DROP TABLE table_name')
※ 最終行のテーブル名 [ table_name ] を適宜書き換えてください。
おわりに
HerokuでPostgreSQLに接続し操作する方法を紹介しました。
接続に成功すれば操作は簡単です。開発に役立てて頂ければ幸いです。