psycopg2パッケージを使用し、CREATE TABLE または DROP TABLE の SQL を発行します。
テーブルの作成
# psycopg2 モジュールのインポート
import psycopg2
# PostgreSQL Server へ接続
conn = psycopg2.connect('host=localhost port=5432 dbname=test user=postgres password=pass')
# カーソルを取得
with conn.cursor() as cur:
# テーブルを作成する SQL を準備
sql = '''
CREATE TABLE TestTable (
pageNo integer Not Null ,
typeName VARCHAR (250),
count INTEGER,
data TEXT,
CONSTRAINT TestTable_pkey PRIMARY KEY (pageNo)
);
'''
# SQL を実行し、テーブル作成
cur.execute(sql)
# コミットし、変更を確定する
conn.commit()
# 接続を閉じる
conn.close()
- コミットを忘れるとロールバックされるため、テーブルが作成されません。
テーブルの削除
テーブルの作成と同じ要領で、DROP TABLE の SQL を発行します。# psycopg2 モジュールのインポート
import psycopg2
# PostgreSQL Server へ接続
conn = psycopg2.connect('host=localhost port=5432 dbname=test user=postgres password=pass')
# カーソルを取得
with conn.cursor() as cur:
# テーブルを削除する SQL を準備
sql = 'DROP TABLE TestTable'
# SQL を実行し、テーブル削除
cur.execute(sql)
# コミットし、変更を確定する
conn.commit()
# 接続を閉じる
conn.close()
サンプルコードのダウンロード
サンプルコードの実行には Python3 以上のバージョンが必要です。検証環境
- Python 3.8.0 (tags/v3.8.0:fa919fd, Oct 14 2019, 19:37:50) [MSC v.1916 64 bit (AMD64)] on win32
- Microsoft Windows 10 Pro Version 1909 OS Build 18363.693