python安装oracle扩展及数据库连接方法

yipeiwu_com7年前Python基础

本文实例讲述了python安装oracle扩展及数据库连接方法。分享给大家供大家参考,具体如下:

下载:

cx_Oracle下载地址:http://cx-oracle.sourceforge.net/
instantclient-basic下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

window环境:

python27 oracle10

需要软件:

cx_Oracle-5.1.2-10g.win32-py2.7.msi
instantclient-basic-win32-10.2.0.4.zip

1. 直接双击msi文件,即安装cx_Oracle;

2. 解压instantclient-basic-win32-10.2.0.4.zip,将得到的.dll文件全部拷贝到F:\Python27\Lib\site-packages目录下

linux环境:

python26 orracle10

需要软件:

cx_Oracle-5.1.2-10g-py26-1.x86_64.rpm
basic-10.2.0.4.0-linux-x86_64.zip

1. rpm -ivh cx_Oracle-5.1.2-10g-py26-1.x86_64.rpm
2. (此处参考/post/106295.htm

设置环境变量

vi /root/.bash_profile

增加如下两行:

export ORACLE_HOME=/usr/local/instantclient_10_2
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME

运行source /root/.bash_profile使改动生效

建立此链接库的符号链接

cd $ORACLE_HOME
ln -s libclntsh.so.x.x libclntsh.so

重新安装cx_Oracle

注意加--nodeps参数,否则还会报上述错误

[root@BJ-UPDATE-01 ~]# rpm -ivh --nodeps cx_Oracle-5.0.1-10g-py24-1.x86_64.rpm
#5.0.3版本不用加--nodeps参数

测试:

#Python
>>> import cx_Oracle
>>> db = cx_Oracle.connect('user/psw@114.242.113.91:1521/orcl')
>>> print db
<cx_Oracle.Connection to user@114.242.113.91:1521/orcl>
>>> cr=db.cursor()
>>> cr.execute("select * from LOGININFO")
<__builtin__.OracleCursor on <cx_Oracle.Connection to user@114.242.113.91:1521/orcl>>
>>> rs=cr.fetchall()
>>> print rs
[('40288a8542746fd90142746fdbb50001', 'cccccc', 1, 1, None, None, None), ('40288a85427474b601427474b8270001', 'eeee', 1, 1, None, None, None), ('40288a854273bce0014273bee6310002', 'dddddd', 0, 0, None, None, None), ('40288a854274532d014274532f600001', 'cccccc', 1, 1, None, None, None), ('40288a8542747c750142747c77ac0001', 'eeee', 1, 1, None, None, None), ('40288a8542744fb30142744fb5e90001', 'cccccc', 1, 1, None, None, None)]
>>>

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

python+mysql实现教务管理系统

本文实例为大家分享了python实现教务管理系统,供大家参考,具体内容如下 mysql+python构成教务管理系统,提供系统管理员,教职工,学生三级。有注册,添加,修改,发布信息等功能...

python实现比较文件内容异同

本文实例为大家分享了python实现比较文件内容异同的具体代码,供大家参考,具体内容如下 import sys import difflib import time import o...

python查看数据类型的方法

python查看数据类型的方法

python怎么查看数据类型? 第一步我们首先需要知道在python中查看变量数据类型是使用type()函数,type函数的用法如下图所示: 第二步我们打开py文件,输入...

Django 内置权限扩展案例详解

Django 内置权限扩展案例详解

当Django的内置权限无法满足需求的时候就自己扩展吧~ 背景介绍 overmind项目使用了Django内置的权限系统,Django内置权限系统基于model层做控制,新的model创...

python twilio模块实现发送手机短信功能

python twilio模块实现发送手机短信功能

前排提示:这个模块不是用于对陌生人进行短信轰炸和电话骚扰的,这个模块也没有这个功能,如果是抱着这个心态来的,可以关闭网页了 语言:python 步骤一:安装twilio模块 pip in...