python3利用cx_Oracle访问Oracle数据库
Posted WapN
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3利用cx_Oracle访问Oracle数据库相关的知识,希望对你有一定的参考价值。
1、安装Oracle客户端instantclient
注意安装的版本,本人安装的是instantclient_11_1版本的,安装instantclient_12_2版本的时候会因系统解析不了dll报错。
(1)下载完成后解压到一个目录下,如:E:instantclient_11_1
(2)增加环境变量:
TNS_ADMIN,值为E:instantclient_11_1
NLS_LANG,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,这是为了防止中文乱码
创建一个监听文件tnsnames.ora到E:instantclient_11_1
2、安装对应版本的cx_Oracle
下载地址:https://pypi.python.org/pypi/cx_Oracle/5.2.1
(1)这里Oracle客户端为11.1版本的,python为3.4版本,操作系统为64位,所以需要下载cx_Oracle-5.2.1-11g.win-amd64-py3.4.exe (md5)版本的cx_Oracle
(2)下载完成后,直接双击安装
(3)安装完成后,将客户端(即:E:instantclient_11_1目录)下的所有dll文件拷贝到python的包目录下,即C:Python34Libsite-packages文件夹下
3、使用测试
import cx_Oracle
print(cx_Oracle.clientversion())
conn = cx_Oracle.connect("用户名/密码@服务器地址/服务器名")
cursor = conn.cursor()
cursor.execute("select address from temp_m_customer_addr_info where ID = ‘103791721‘")
row = cursor.fetchone()
print(row)
cursor.close()
conn.close()
以上是关于python3利用cx_Oracle访问Oracle数据库的主要内容,如果未能解决你的问题,请参考以下文章
使用Python解决Cx_Oracle查询时UnicodeDecodeError的问题
centos6.5编译安装python3.6.3和cx_oracle
centos6.5编译安装python3.6.3和cx_oracle