zoukankan      html  css  js  c++  java
  • cx_Oracle说:Python访问Oracle并不难

      标题很好的说明cx_Oracle的意义,但是就像Windows下访问Oracle那样麻烦一样,Debian中一样繁琐,本文将用尽量简单的过程介绍在Debian 5中Python访问Oracle,但cx_Oracle的使用请参考文档。

      Python实现对Oracle的访问需要以下两个组件和一个可选组件:

    • Oracle Instant Client 它是Oracle提供的一个简单的访问Oracle的组件,不用安装Oracle标准客户端。
    • cx_Oracle 一套符合python 数据库API规范的Oracle访问组件。
    • alient(可选) 简单来讲,就是能把RHEL下的程序包(.rpm)和基于Debian系统中的程序包(.dpkg)相互转换的工具。

    一、Oracle Instant Client安装

      It is free!它提供了Oracle数据库访问的C语言接口OCI,cx_Oracle就是通过OCI访问数据库,所以如果只需要在客户端访问数据库,它就是最轻量的。注册并下载Basic包,里面有几个库文件,我们要做的是在cx_Oracle能使用OCI提供的接口,即把Basic包中的几个库文件加入Debian的共享库中。
    #mkdir /opt/oracle/instantclient
    #cp Basic包中文件 /opt/oracle/instantclient
    #vi /etc/profile
    
    在底部加入以下指令:
    export LD_LIBRARY_PATH="/opt/oracle/instantclient/"
    
    程序运行时一般会从系统默认的路径中查找共享库文件:/lib和/usr/lib。如果存在环境变量LD_LIBRARY_PATH,那么会先从这里查找库文件,有了这些库文件就可以安装cx_Oracle。

    二、安装cx_Oracle

      cx_Oracle是Python中访问Oracle的一个扩展组件,也是很多地方推荐的方案。但是官方网站上并没有提供基于Debian系统类型的安装包,但是有rpm包,这里可以通过alient转换rpm转换到dpkg的折中方法来安装,当然也可以源码安装。
    #apt-get install alient
    #alient cx_Oracle-*.*.*.*.rpm
    #dpkg -i cx_Oracle-*.*.*.*.dpkg

    三、cx_Oracle使用

      这里只介绍它的简单使用方法:

    import cx_Oracle
    db = cx_Oracle.connect('username', 'pwssword', 'ip_address:1521/db_name') 
    print db.dsn
    print db.version
    
    小结

      本文记录了Debian中Python访问Oracle数据库的cx_Oracle的设置方法,如果有其他方法的经验,欢迎讨论。
  • 相关阅读:
    Java IO2
    Java IO1 复制粘贴文件
    Java superArray2
    17杭州女子专场赛
    组队赛 A Promotions 深搜+逆向思维
    Java处理异常小试
    再谈Dijkstra算法和堆优化
    仿照JAVA vector模型写一个SuperArray
    HDU 2017女生赛04 (变形最短路)
    Gym-100712J 桶排序思想&反向思维
  • 原文地址:https://www.cnblogs.com/ddr888/p/1736990.html
Copyright © 2011-2022 走看看