1. python 설치 ( 64bit )
: python-2.7.8.amd64.msi
2. instantclient-basic-win64-10.2.0.5
: 적당한 위치에 압축을 푼다.
※ http://www.oracle.com/technetwork/database/features/instant-client/index-100365.html
3. 환경변수에 python, instant client path 설정
: 시스템속성 > 고급 > 환경변수 > 시스템변수 > Path
ex) C:\Python27;C:\instantclient_10_2;
4. 테스트 코드
# coding=utf-8 import os import cx_Oracle os.putenv("NLS_LANG", "KOREAN_KOREA.AL32UTF8") db_conf = {'db_user': 'userName', 'pw': 'userPassword', 'ip': '111.111.111.111', 'port': 1521, 'name': 'serviceName'} conn = cx_Oracle.connect(db_conf['db_user'], db_conf['pw'], cx_Oracle.makedsn(db_conf['ip'], db_conf['port'], db_conf['name'])) cur = conn.cursor() def getQueryResults(cur, sqlStr, params): if params is None: cur.execute(sqlStr) else: cur.execute(sqlStr, params) desc = [d[0] for d in cur.description] result = [dict(zip(desc, line)) for line in cur] print(result) return result sql_str = """select a.column1, a.column2, a.column3 from test_table a where a.column1 = 'test'""" getQueryResults(cur, sql_str, None) select_list = cur.fetchall() print("select result cnt >>> %d" % cur.rowcount) conn.commit() cur.close() conn.close()
댓글 없음:
댓글 쓰기