关闭

windows下Python连接Oracle

标签: pythonoracle
2051人阅读 评论(1) 收藏 举报
分类:

安装出错:

distutils.errors.DistutilsSetupError: cannot locate Oracle include files in

或者运行出错:

cx_Oracle.InterfaceError: Unable to acquire Oracle environment handle

均可参考该文章


环境:

windows10(同样适用于windows7,8),python2.7

1.下载cx_Oracle

在windows下不要使用easy_install或者pip,因为这样安装不会同步环境,并报错:

distutils.errors.DistutilsSetupError: cannot locate Oracle include files in...

因此下载.exe文件安装

https://pypi.python.org/pypi/cx_Oracle 下载cx_Oracle-5.2.1-12c.win-amd64-py2.7.exe (md5)


2.下载Oracle Instant Client

去http://www.oracle.com/technetwork/topics/winx64soft-089540.html下载 instantclient-basic-windows.x64-12.1.0.2.0.zip 

下载后解压到某一路径,并将该路径添加到系统的环境变量,命名为ORACLE_HOME,将ORACLE_HOME添加到path下,否则会报错

cx_Oracle.InterfaceError: Unable to acquire Oracle environment handle


3.Python下测试

import cx_Oracle

dsn=cx_Oracle.makedsn("192.168.0.233", 1521, "TONGJI")
conn=cx_Oracle.connect("SAS","Tongji123",dsn)
curs=conn.cursor()
sql='select * from CASE_INFO where rownum<10'
rr=curs.execute (sql)
row=curs.fetchone()
print row[0]
curs.close()                                                
conn.close()

输出正确


注意:不需要再本机上安装Oracle,也不需要新建NETWORK/ADMIN目录添加tnsnames.ora文件,更不要把oci.dll移到site-packages

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:33956次
    • 积分:692
    • 等级:
    • 排名:千里之外
    • 原创:35篇
    • 转载:0篇
    • 译文:0篇
    • 评论:10条
    最新评论