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

yipeiwu_com5年前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使用Plotly绘图工具,绘制甘特图

详解Python使用Plotly绘图工具,绘制甘特图

今天来讲一下如何使用Python 的绘图工具Plotly来绘制甘特图的方法 甘特图大家应该了解熟悉,就是通过条形来显示项目的进度、时间安排等相关情况的。 我们今天来学习一下,如何使用pl...

python中map的基本用法示例

python中map的基本用法示例

map()函数 map() 会根据提供的函数对指定序列做映射,是内置函数 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 functi...

解决python2 绘图title,xlabel,ylabel出现中文乱码的问题

解决python2 绘图title,xlabel,ylabel出现中文乱码的问题

绘制图形时使用了中文标题,会出现乱码 原因是matplotlib.pyplot在显示时无法找到合适的字体。 先把需要的字体(在系统盘C盘的windows下的fonts目录内)添加到Fo...

Python 函数基础知识汇总

一、函数基础 简单地说,一个函数就是一组Python语句的组合,它们可以在程序中运行一次或多次运行。Python中的函数在其他语言中也叫做过程或子例程,那么这些被包装起来的语句通过一个函...

django+js+ajax实现刷新页面的方法

本文实例讲述了django+js+ajax实现刷新页面的方法。分享给大家供大家参考,具体如下: 在服务器开发的时候,为了方便将服务器对外开一个接口来操作,可以使用django制作网页,通...