当前位置: 首页 > 图文教程 > 数据库 > Oracle > 如何在Python下连接Oracle数据库

Oracle
MySQL安全性指南 (1)(转)
MySQL安全性指南 (2)(转)
MySQL安全性指南(3)(转)
Microsoft SQL Server 7.0安全问题
如何删除oracle10g中的垃圾表?
Oracle诊断工具-RDA使用概述
开启企业殿堂的钥匙 Oracle服务器的安装
Oracle数据库监听配置
ORACLE的客户端如何连接到数据库
Linux 9i下Dataguard配置
在RHEL4U4上安装Oracle10GS2
Oracle开发(一).Windows下配置使用ProC
Oracle数据库开发(二).Linux下配置使用ProC
解决ora-01861文字与格式字符串不匹配
Ruby on Rails 连接 Oracle 数据库实践
oracle 10G在fedora2上的安装
oracle 透明网关环境的建立
Oracle9i iSQL*PLUS的配置过程
oracle安装过程中无法换盘
Oracle 10g RAC之网络设置

如何在Python下连接Oracle数据库


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-31   浏览: 58 ::
收藏到网摘: n/a

【1】首先下载驱动:(cx_Oracle)
http://www.python.net/crew/atuining/cx_Oracle/
不过要注意一下版本,根据你的情况加以选择。
【2】安装:
执行那个exe安装程序就可以了,它会copy一个cx_Oracle.pyd到{PYTHON_HOME}\Lib\site-packages目录下。
【3】执行一段测试程序:
import cx_Oracle

con 
= cx_Oracle.connect( "xjtu_test""37343734","xjtu.world")
cursor 
= con.cursor()
cursor.close()
con.close()


里边connect中的3个参数从左到右分别是:user, pass, TNS。
那个TNS可以用Oracle客户端工具中的Net Configuration Assistant来配置。
【4】具体的cx_Oracle API可以参考:
http://www.python.net/crew/atuining/cx_Oracle/html/cx_Oracle.html

好了,执行那段测试代码时你肯定遇到问题了,一般会有以下问题:
【1】import cx_Oracle 时报告找不到OCI.DLL:
到装了Oracle的机器上找一个,然后copy到{PYTHON_HOME}\Lib\site-packages目录下就可以了。
【2】cx_Oracle.connect 时报告RuntimeError: Unable to acquire Oracle environment handle:
这个比较麻烦,按以下步骤来解决:(可能不需要所有的步骤,我没有确认,不过把以下步骤都执行了,确实问题就解决了)
首先,确认你是在控制台下边来执行这个python脚本的。而不是某些ide,例如:PyDev(它们似乎无法载入os的环境变量)。
其实,在本机安装Oracle(只安客户端工具就可以了)。
最后,添加以下环境变量:(我给出我的,换成你自己的路径就可以了)
ORACLE_HOME=D:\Oracle\Ora81
PATH=D:\Oracle\Ora81\bin;{your_other_paths}

完成