最近、PythonでPostgreSQLに接続するプログラムを書いたので、その時に使ったコードをメモとして残しておく。
psycopg2のインストール
まず、PythonでPostgreSQLに接続するためのライブラリ「psycopg2」をpipでインストールする。
1 | pip install psycopg2 |
事前準備はこれだけ。
DBの接続とSELECT文の実行
DBの接続は直接psycopg2.connect()
関数を使っても良いのだが、とりあえずここでは別の関数として用意した。
接続を確立したら、まずはconn.cursor()
でDB操作のためのカーソルを取得する。
基本的にはここで取得したカーソルを使ってDBを操作する。
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | import psycopg2 # DB接続情報 DB_HOST = 'hostname' DB_PORT = '5432' DB_NAME = 'dbname' DB_USER = 'hogehoge' DB_PASS = 'fugafuga' # DB接続関数 def get_connection(): return psycopg2.connect( 'postgresql://{user}:{password}@{host}:{port}/{dbname}' . format ( user = DB_USER, password = DB_PASS, host = DB_HOST, port = DB_PORT, dbname = DB_NAME )) conn = get_connection() cur = conn.cursor() # SQL実行(tbl_sampleから全データを取得) cur.execute( 'SELECT * FROM tbl_sample' ) rows = cur.fetchall() print (rows) cur.close() conn.close() |
上記はDB接続から、SELECT文の実行、接続のクローズと、一連の流れをおこなう簡単なサンプルコードだが、基本的にはこのコードをベースに編集すればDBに対するあらゆる操作をおこなうことができる。