python3.6でOracle12c接続の確認(cx_Oracle)
概要
python3.6でOracle12cへ接続してSQLを実行する際のメモです。
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production CentOS Linux release 7.3.1611 (Core) Python 3.6.2
確認
接続情報
DBserver:oracle12c.test port:1521 service_name:orclpdb.test user:test01 password:xxxx
pythonコード
ora_connect.py
import cx_Oracle import sys import os import configparser def connect_Oracle( server, port, user, pswd, service ): try: conn = cx_Oracle.connect( user, pswd, server + ':' + port + '/' + service ) cur = conn.cursor() return ( cur ) except ( cx_Oracle.DatabaseError ) as ex: print ( sys.exc_info()[1] ) raise ex def exec_Oracle_SQL( cur, sql ): try: cur.execute( sql ) rows = cur.fetchall() return ( rows ) except ( cx_Oracle.DatabaseError ) as ex: print ( sys.exc_info()[1] ) raise ex if __name__ == '__main__': cur = connect_Oracle( 'oracle12c.test', '1521', 'test01', 'xxxx', 'orclpdb.test' ) rows = exec_Oracle_SQL( cur, 'select username, user_id from user_users' ) for row in rows: print ( row[0] + ', ', end = "" ) print ( row[1] )
実行結果
[standingzzz@apl common]$ python ora_connect.py TEST01, 108 [standingzzz@apl common]$