環境変数から接続情報を取得します。
In [1]:
import os
pgconfig = {
'host': os.environ['PGHOST'],
'port': os.environ['PGPORT'],
'database': os.environ['PGDATABASE'],
'user': os.environ['PGUSER'],
'password': os.environ['PGPASSWORD'],
}
psycopg2 モジュールを読み込み、環境変数から取得した接続情報でデータベースに接続します。
In [2]:
import psycopg2
conn = psycopg2.connect(**pgconfig)
SQL を実行するためのカーソルを取得します。
In [3]:
cur = conn.cursor()
テーブルを定義します。
In [4]:
cur.execute('''
DROP TABLE IF EXISTS t ;
CREATE TABLE t (
id SERIAL,
code CHAR(2) NOT NULL,
name TEXT NOT NULL,
created_at TIMESTAMP WITHOUT TIME ZONE DEFAULT now()
)''')
データを登録します。
In [5]:
cur.execute('''
INSERT INTO t (
code, name
) VALUES
('01', '北海道'),
('47', '沖縄県')
''')
データを取得します。
In [6]:
cur.execute("SELECT * FROM t")
cur.fetchone()
Out[6]:
In [7]:
cur.fetchone()
Out[7]:
カーソルと接続を閉じます。
In [8]:
cur.close()
conn.close()