Python

Pythonからデータベース接続(PostgreSQL,Oracle,MySQL)

投稿日:2020年5月20日 更新日:

目的

pythonからデータベースに接続するコードをすぐ忘れるので、書き留める

PostgreSQLの場合

パッケージインストール

pip install psycopg2

コード

import psycopg2

HOST = 'your_host'
PORT = '5432'
DB_NAME = 'your_db_name'
USER = 'your_user_name'
PASSWORD = 'your_password'

conn = psycopg2.connect("host=" + HOST + " port=" + PORT + " dbname=" + DB_NAME + " user=" + USER + " password=" + PASSWORD
)
cur = conn.cursor()
cur.execute("select version()")
rows = cur.fetchall()
cur.close()
conn.close()
print(rows)

MySQLの場合

パッケージインストール

pip install mysqlclient

コード

import MySQLdb

HOST = 'your_host'
PORT = 3306 #文字列ではなくint
DB_NAME = 'your_db_name'
USER = 'your_user_name'
PASSWORD = 'your_password'

conn = MySQLdb.connect( user=USER, passwd=PASSWORD, host=HOST, db=DB_NAME,port=PORT)
cur = conn.cursor()
cur.execute("select version()")
rows = cur.fetchall()
conn.close()
print(rows)

Oracleの場合

パッケージインストール ※別途Oracle clientが必要

pip install cx_Oracle

コード

import cx_Oracle

HOST = 'your_host'
PORT = '1521'
DB_NAME = 'your_db_name'
USER = 'your_user_name'
PASSWORD = 'your_password'
SERVICE_NAME = 'your_service_name'

tns = cx_Oracle.makedsn(HOST, PORT, service_name =SERVICE_NAME)
conn = cx_Oracle.connect(USER,PASSWORD,tns)
cur = conn.cursor()
cur.execute("select * from v$version")
rows = cur.fetchall()
cur.close()
conn.close()
print(rows)

-Python
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

【Python】PaSoRiでカードを読み取ったら音を鳴らす

Contents1 目的2 音源3 音源再生用ライブラリ(pydub)4 コード5 結論 目的 前回、PaSoRiの上にICカードを置いた状態からカードの中の情報を読み取る、というものをPythonで …

VSCodeから外部のJupyterへ接続する

Contents1 目的2 環境3 Step1 : Jupyterのconfig設定4 Step2 : VSCodeからの接続5 Step3 : Jupyterを使用して確認6 まとめ 目的 自端末の …

Pythonの文字列操作

Contents1 目的2 文字列の連結3 文字列の抽出4 文字列の抽出(スライス)5 文字列の繰り返し6 文字数取得7 文字列の分割8 文字列の結合9 文字列の置換 目的 pythonの文字列操作に …

Python dataframeからMySQLにinsertする

Contents1 目的2 環境3 Step1 : 挿入先テーブル用意4 Step2 : 挿入用データ準備5 Step3 : MySQLへの挿入6 補足 目的 pythonのdataframeはデータ …

【Python】四分位数の計算

Contents1 目的2 データ準備3 四分位数4 四分位偏差5 注意点 目的 これまで、データの平均の考え方とその計算方法について学びました。しかし、データの特性の評価には平均だけでなく、ばらつき …

言語切り替え

カテゴリー