CentOS Python操作Oracle的脚本简录

简单说明:

需要安装cx_Oracle模块,可以使用pip安装或者使用rpm包安装
需要安装对应Python版本且对应Oracle版本的cx_Oracle模块
常用的几个RPM包下载URL如下:
http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py24-1.x86_64.rpm
http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-10g-py26-1.x86_64.rpm
http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py26-1.x86_64.rpm
http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-10g-py27-1.x86_64.rpm
http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py27-1.x86_64.rpm
http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py33-1.x86_64.rpm
需要Oracle对应版本的客户端包:instantclient-basic-linux

模块安装,脚本简录:

# 解压复制Oracle11g的对应模块文件
cd /tmp
unzip instantclient-basic-linux.x64-11.2.0.4.0.zip
cp -av instantclient_11_2/*.so* /lib64/
# 下载安装和Oracle客户端对应版本的且和Python版本相对应的cx_Oracle包
axel 'http://rpmfind.net/linux/sourceforge/c/cx/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py26-1.x86_64.rpm'
yum -y localinstall /tmp/cx_Oracle-5.1.2-11g-py26-1.x86_64.rpm

cat >/tmp/test.py<<EOF
#!/usr/bin/python
# coding:utf-8
import cx_Oracle
User = raw_input("User: ")
Pass = raw_input("Pass: ")
IP = raw_input("IP: ")
Port = raw_input("Port: ")
Sid = raw_input("Sid: ")
Str = User + '/' + Pass + '@' + IP + ':' + Port + '/' + Sid
print (Str)
conn = cx_Oracle.connect(Str)
cursor = conn.cursor()
cursor.execute('select sysdate from dual connect by level<=10')
for row in cursor.fetchall():             
    print row
print cursor.rowcount
cursor.close()
conn .close()
EOF

python test.py
# 输入用户名密码、IP端口和SID
# 链接库,SQL查询
# 可以使用11g的客户端和对应版本的cx_Oracle连接10g库

这里写图片描述

[TOC]

猜你喜欢

转载自blog.csdn.net/zwjzqqb/article/details/80767616
今日推荐