python怎么连接oracle

Python (237) 2023-05-26 11:36:25

一:弄清版本,最重要!!!

首先安装配置时,必须把握一个点,就是版本一致!包括:系统版本,python版本,oracle客户端的版本,cx_Oracle的版本,然后安装配置就容易了!

以我的环境为例:

python版本:

cx_Oracle的版本:

oracle客户端的版本:

相关推荐:《Python教程》

二:安装

1.cx_Oracle安装

下载地址:https://pypi.python.org/pypi/cx_Oracle/5.3

下载后直接双击安装,就ok了。 不建议直接使用pip install cx_Oracle命令安装,因为版本问题容易报错。

2.oracle 客户端

(1)下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

把下载的文件解压,复制oci,oraocci11,oraociei11的3个DLL粘贴到你的PY目录的Libs/site-packages文件夹下面。

(2)配置tnsnames.tns文件

在E:\oracle解压地址\instantclient下建立文件tnsnames.ora,

将下面内容粘贴进该文件:

***=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=***)(PORT=1521)))
(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=***)))

3.设置环境变量(系统变量)

NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中间有空格,这个如果不设,toad查询中文会是乱码)

TNS_ADMIN= E:\oracle解压地址\instantclient

Path=...;E:\oracle解压地址\instantclient

三:测试

importcx_Oracle
conn=cx_Oracle.connect('用户名/密码@主机ip地址/orcl')#用自己的实际数据库用户名、密码、主机ip地址替换即可
curs=conn.cursor()
sql='SELECT*FROM。。。'#sql语句
rr=curs.execute(sql)
row=curs.fetchone()
print(row[0])
curs.close()
conn.close()
THE END

发表回复