http://www.cnblogs.com/ylqmf/archive/2012/04/16/2451841.html
cx_Oracle下载安装
Python模块下载地址:https://pypi.python.org/pypi
Python 连接Oracle 数据库,需要使用cx_Oracle 包,搜索cx_Oracle进入
https://pypi.python.org/pypi?%3Aaction=search&term=cx_Oracle&submit=search下载需要版本即可
Oracle数据库连接与关闭
方法一:用户名,密码和监听 分开写
import cx_Oracle
db = cx_Oracle.connect('admin','123456','127.0.0.1:1521/orcl')
print db.version
db.close()
方法二:用户名,密码和监听写在一起
import cx_Oracle
db = cx_Oracle.connect('admin/123456@127.0.0.1:1521/orcl')
print db.version
db.close()
方法三:配置监听并连接
import cx_Oracle
tns=cx_Oracle.makedsn('127.0.0.1',1521,'orcl')
db=cx_Oracle.connect('admin','123456',tns)
print tns
print db.version
vs=db.version.split('.')
print vs
if vs[0]=='11':
print "This is Oracle 11g!"
db.close()
建立cursor 并执行SQL语句
import cx_Oracle
tns=cx_Oracle.makedsn('127.0.0.1',1521,'orcl')
db=cx_Oracle.connect('admin','123456',tns) #创建连接
cr=db.cursor() #创建cursor
sql='select * from phone'
cr.execute(sql) #执行sql 语句
print "This is Fetchall!\n"
rs=cr.fetchall() #一次返回所有结果集
print "print all:(%s)\n " %rs
print "print by row:\n"
for x in rs:
print x
print "This is Fetone!\n"
cr.execute(sql)
while(1):
rs=cr.fetchone() #一次返回一行
if rs ==None:break
print rs
使用参数查询
print "select with parameter:\n"
pr={'id':3,'tel':13888888888}
cr.execute('select * from phone where id=:id or phone=:tel',pr) #这里我们将参数作为一个字典来处理的
rs=cr.fetchall()
print rs
cr.execute('select * from phone where id=:myid or phone=:myphone',myid=2,myphone=13888888888) #这里我们直接写参数
rs=cr.fetchall()
print rs
cr.close()
db.close()
对数据进行增删改查,创建一张表
#include:select
cr=db.cursor()
cr.execute(sql)
rs=cr.fetchall()
cr.close()
return rs
#include: insert,update,delete
cr=db.cursor()
cr.execute(sql)
cr.close()
db.commit()
#include: create a table
cr=db.cursor()
cr.execute(sql)
cr.close()