使用python连接oracle数据库
2008-01-02 18:50
1261 查看
【1】首先下载驱动:(cx_Oracle) http://www.python.net/crew/atuining/cx_Oracle/ 不过要注意一下版本,根据你的情况加以选择。
【2】安装:
首先配置oracle_home环境变量
执行那个exe安装程序就可以了,它会copy一个cx_Oracle.pyd到Libsite-packages目录下。
如果是linux,执行
python setup.py build
python setup.py install
【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
【5】举例
>>> import cx_Oracle
>>> conn=cx_Oracle.connect ('scott/tiger@oratest')
>>> curs=conn.cursor ()
>>> sql='select * from emp'
>>> rr=curs.execute (sql)
>>> row=curs.fetchone()
>>> row
(7369, 'SMITH', 'CLERK', 7902, datetime.datetime(1980, 12, 17, 0, 0), 800.0, None, 20)
>>> while row:
(ID,NAME)=(row[0],row[1])
row=curs.fetchone ()
print ID,NAME
7369 SMITH
7499 ALLEN
7521 WARD
7566 JONES
7654 MARTIN
7698 BLAKE
7782 CLARK
7788 SCOTT
7839 KING
7844 TURNER
7876 ADAMS
7900 JAMES
7902 日常
7934 MILLER
如果使用windows平台,执行那段测试代码时你肯定遇到问题了,一般会有以下问题:
【1】import cx_Oracle 时报告找不到OCI.DLL:
到装了Oracle的机器上找一个,然后copy到Libsite-packages目录下就可以了。
【2】cx_Oracle.connect 时报告RuntimeError: Unable to acquire Oracle environment handle:
这个比较麻烦,按以下步骤来解决:(可能不需要所有的步骤,我没有确认,不过把以下步骤都执行了,确实问题就解决了)
首先,确认你是在控制台下边来执行这个python脚本的。而不是某些ide,例如:PyDev(它们似乎无法载入os的环境变量)。
其实,在本机安装Oracle(只安客户端工具就可以了)。
最后,添加以下环境变量:(我给出我的,换成你自己的路径就可以了)
ORACLE_HOME=D:OracleOra81
PATH=D:OracleOra81bin;
【2】安装:
首先配置oracle_home环境变量
执行那个exe安装程序就可以了,它会copy一个cx_Oracle.pyd到Libsite-packages目录下。
如果是linux,执行
python setup.py build
python setup.py install
【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
【5】举例
>>> import cx_Oracle
>>> conn=cx_Oracle.connect ('scott/tiger@oratest')
>>> curs=conn.cursor ()
>>> sql='select * from emp'
>>> rr=curs.execute (sql)
>>> row=curs.fetchone()
>>> row
(7369, 'SMITH', 'CLERK', 7902, datetime.datetime(1980, 12, 17, 0, 0), 800.0, None, 20)
>>> while row:
(ID,NAME)=(row[0],row[1])
row=curs.fetchone ()
print ID,NAME
7369 SMITH
7499 ALLEN
7521 WARD
7566 JONES
7654 MARTIN
7698 BLAKE
7782 CLARK
7788 SCOTT
7839 KING
7844 TURNER
7876 ADAMS
7900 JAMES
7902 日常
7934 MILLER
如果使用windows平台,执行那段测试代码时你肯定遇到问题了,一般会有以下问题:
【1】import cx_Oracle 时报告找不到OCI.DLL:
到装了Oracle的机器上找一个,然后copy到Libsite-packages目录下就可以了。
【2】cx_Oracle.connect 时报告RuntimeError: Unable to acquire Oracle environment handle:
这个比较麻烦,按以下步骤来解决:(可能不需要所有的步骤,我没有确认,不过把以下步骤都执行了,确实问题就解决了)
首先,确认你是在控制台下边来执行这个python脚本的。而不是某些ide,例如:PyDev(它们似乎无法载入os的环境变量)。
其实,在本机安装Oracle(只安客户端工具就可以了)。
最后,添加以下环境变量:(我给出我的,换成你自己的路径就可以了)
ORACLE_HOME=D:OracleOra81
PATH=D:OracleOra81bin;
相关文章推荐
- python使用cx_oracle连接oracle数据库
- Python使用cx_Oracle模块连接操作Oracle数据库
- python使用cx_oracle连接oracle数据库
- 随笔记:如何使用Python连接(/操作)Oracle数据库(Windows平台下)
- Python(Pycharm)连接Oracle数据库之cx_Oracle的使用(cx_Oracle在pyCharm中报错)
- python使用jdbc连接oracle数据库
- Python使用cx_Oracle模块连接操作Oracle数据库
- 使用python连接Oracle数据库
- 一次使用Python连接数据库生成二维码并安装为windows服务的工作任务
- java连接oracle数据库使用SERVICE NAME、SID以及TNSName不同写法
- Python3中使用PyMySQL连接Mysql
- C#连接Oracle数据库(直接引用dll使用)
- python2学习笔记之mysql连接,中文乱码的解决和文件api的使用
- ASP.NET在IIS上部署使用Oracle数据库无法连接数据库解决方法
- (64位oracle使用32位的PLSQL)安装64位的oracle数据库软件,使用32位的PLSQL Developer连接方法
- 新手第一次使用hibernate 连接 oracle数据库个人体会
- python 使用pymssql连接sql server数据库
- python使用mysqldb连接数据库
- 使用C#连接ORACLE数据库 2
- python使用socket进行简单网络连接的方法