zoukankan      html  css  js  c++  java
  • cx_Oracle

    cx_Oracle

    安装

    pip install cx_Oracle

    只是我没用那个安装成功过。我找了rpm 包。
    http://nchc.dl.sourceforge.net/project/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py26-1.x86_64.rpm
    然后直接rpm安装了你懂的。

    只是你在python中运行import cx_Oracle时还会报找不到lib的错误

    [root@iZ23dnwecebZ ~]# python
    Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36)
    [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import cx_Oracle
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ImportError: libclntsh.so.11.1: cannot open shared object file: No such file or directory

    事实上libclntsh.so.11.1这个是有的,用find 能够找到。

    /data/oms/agent/core/12.1.0.2.0/instantclient/libclntsh.so.11.1

    把这个文件夹加到/etc/ld.so.conf

    [root@iZ23dnwecebZ ~]# cat /etc/ld.so.conf
    include ld.so.conf.d/*.conf
    /data/oms/agent/core/12.1.0.2.0/instantclient
    [root@iZ23dnwecebZ ~]# ldconfig
    

    之后运行import cx_Oracle就没有问题了。

    写个小的test程序去连一下oracle

    import cx_Oracle
    db = cx_Oracle.connect('system', 'oracle', '10.168.xx.xx:1521/xxx')
    print db.version
    

    显示出oracle的版本

    [oracle@iZ23dnwecebZ ~]$ python t.py
    11.2.0.4.0

    使用

    能够參看
    http://www.oracle.com/technetwork/articles/dsl/python-091105.html

    fetchone,fetchall的使用方法和mysql的python调用差点儿相同。我也仅仅是用作最简单的查询。


    基本使用方法:

    import cx_Oracle
    con = cx_Oracle.connect('pythonhol/welcome@127.0.0.1/orcl')
    cur = con.cursor()
    sql='select * from departments order by department_id'
    
    cur.execute(sql)             
    res = cur.fetchall()
    for r in res
        print r
    
    cur.close()           
    con.close()

    拿来做简单的查询是够了。

  • 相关阅读:
    Anaconda 和 Jupyter notebook
    DOM基础之创建元素
    python爬虫入门学习3 Requests请求库
    04 字典类型已内置方法
    05 流程控制
    03 可变类型与不可变类型
    02 元组数据类型
    01 列表内置方法
    day2笔记
    00 python基础知识
  • 原文地址:https://www.cnblogs.com/jzssuanfa/p/7019596.html
Copyright © 2011-2022 走看看