Python编程实战之Oracle数据库操作示例


Posted in Python onJune 21, 2017

本文实例讲述了Python编程实战之Oracle数据库操作。分享给大家供大家参考,具体如下:

1. 要想使Python可以操作Oracle数据库,首先需要安装cx_Oracle包,可以通过下面的地址来获取安装包

http://cx-oracle.sourceforge.net/

2. 另外还需要oracle的一些类库,此时需要在运行python的机器上安装Oracle Instant Client软件包,可以通过下面地址获得

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

找到符合自己平台的包,然后安装,这里我使用的是rpm包,所以使用以下命令安装

$ sudo rpm -ivh oracle-instantclient11.2-basic-11.2.0.3.0-1.i386.rpm

装完毕后还需要设置一下环境变量,如下

$ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/lib/oracle/11.2/client/lib

3. 创建一个简单的python文件,测试安装是否成功

import cx_Oracle
conn = cx_Oracle.connect('fkong/fkong@172.17.23.129/orcl')
cursor = conn.cursor ()
cursor.execute ("select * from dual")
row = cursor.fetchone ()
print row[0]
cursor.close ()
conn.close ()

4. 下面看一个数据库建表和插入操作

import cx_Oracle
conn = cx_Oracle.connect('fkong/fkong@172.17.23.129/orcl')
cursor = conn.cursor ()
cursor.execute ("CREATE TABLE TEST(ID INT, COL1 VARCHAR(32), COL2 VARCHAR(32), COL3 VARCHAR(32))")
cursor.execute ("INSERT INTO TEST (ID, COL1, COL2, COL3)VALUES(1, 'a', 'b', 'c')")
cursor.execute ("INSERT INTO TEST (ID, COL1, COL2, COL3)VALUES(2, 'aa', 'bb', 'cc')")
cursor.execute ("INSERT INTO TEST (ID, COL1, COL2, COL3)VALUES(3, 'aaa', 'bbb', 'ccc')")
conn.commit()
cursor.close ()
conn.close ()

5. 下面再来看看查询,查询通常有两种方式:一种是使用cursor.fetchall()获取所有查询结果,然后再一行一行的迭代;另一种每次通过cursor.fetchone()获取一条记录,直到获取的结果为空为止。看一下下面的例子:

import cx_Oracle
conn = cx_Oracle.connect('fkong/fkong@172.17.23.129/orcl')
cursor = conn.cursor ()
cursor.execute ("SELECT * FROM TEST")
rows = cursor.fetchall()
for row in rows:
  print "%d, %s, %s, %s" % (row[0], row[1], row[2], row[3])
print "Number of rows returned: %d" % cursor.rowcount
cursor.execute ("SELECT * FROM TEST")
while (1):
  row = cursor.fetchone()
  if row == None:
    break
  print "%d, %s, %s, %s" % (row[0], row[1], row[2], row[3])
print "Number of rows returned: %d" % cursor.rowcount
cursor.close ()
conn.close ()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python正则表达式re模块详解
Jun 25 Python
Python的Django框架中forms表单类的使用方法详解
Jun 21 Python
Python获取暗黑破坏神3战网前1000命位玩家的英雄技能统计
Jul 04 Python
Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
Sep 18 Python
利用Tkinter(python3.6)实现一个简单计算器
Dec 21 Python
解决seaborn在pycharm中绘图不出图的问题
May 24 Python
python 读取视频,处理后,实时计算帧数fps的方法
Jul 10 Python
python基础教程之while循环
Aug 14 Python
详解python中的生成器、迭代器、闭包、装饰器
Aug 22 Python
python程序 线程队列queue使用方法解析
Sep 23 Python
python中判断数字是否为质数的实例讲解
Dec 06 Python
Python如何实现感知器的逻辑电路
Dec 25 Python
Python获取SQLite查询结果表列名的方法
Jun 21 #Python
基于hashlib模块--加密(详解)
Jun 21 #Python
详谈Python基础之内置函数和递归
Jun 21 #Python
浅谈python内置变量-reversed(seq)
Jun 21 #Python
python 简单的绘图工具turtle使用详解
Jun 21 #Python
利用python批量给云主机配置安全组的方法教程
Jun 21 #Python
python anaconda 安装 环境变量 升级 以及特殊库安装的方法
Jun 21 #Python
You might like
php面向对象全攻略 (十二) 抽象方法和抽象类
2009/09/30 PHP
一个非常完美的读写ini格式的PHP配置类分享
2015/02/12 PHP
thinkPHP框架乐观锁和悲观锁实例分析
2019/10/30 PHP
异步javascript的原理和实现技巧介绍
2012/11/08 Javascript
在ASP.NET中使用JavaScript脚本的方法
2013/11/12 Javascript
js贪吃蛇网页版游戏特效代码分享(挑战十关)
2015/08/24 Javascript
JS实现超精简响应鼠标显示二级菜单代码
2015/09/12 Javascript
使用CoffeeScrip优美方式编写javascript代码
2015/10/28 Javascript
bootstrap和jQuery.Gantt的css冲突 如何解决
2016/05/29 Javascript
javascript字符串对象常用api函数小结(连接,替换,分割,转换等)
2016/09/20 Javascript
Jquery循环截取字符串的方法(多出的字符串处理成"...")
2016/11/28 Javascript
工作中常用的js、jquery自定义扩展函数代码片段汇总
2016/12/22 Javascript
javascript实现数据双向绑定的三种方式小结
2017/03/09 Javascript
JavaScript类的继承方法小结【组合继承分析】
2018/07/11 Javascript
js异步上传多张图片插件的使用方法
2018/10/22 Javascript
Echart折线图手柄触发事件示例详解
2018/12/16 Javascript
vue实现侧边栏导航效果
2019/10/21 Javascript
electron 安装,调试,打包的具体使用
2019/11/06 Javascript
python实现猜数字游戏(无重复数字)示例分享
2014/03/29 Python
Python实现类继承实例
2014/07/04 Python
Python中for循环控制语句用法实例
2015/06/02 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
python3调用R的示例代码
2018/02/23 Python
python环形单链表的约瑟夫问题详解
2018/09/27 Python
python找出一个列表中相同元素的多个索引实例
2019/06/11 Python
Python并发concurrent.futures和asyncio实例
2020/05/04 Python
python用什么编辑器进行项目开发
2020/06/17 Python
python切片作为占位符使用实例讲解
2021/02/17 Python
美国折扣宠物药房:Total Pet Supply
2018/05/27 全球购物
给酒店员工的表扬信
2014/01/11 职场文书
办公设备采购方案
2014/03/16 职场文书
城管大队整治方案
2014/05/06 职场文书
经营理念标语
2014/06/21 职场文书
工商局副局长个人对照检查材料
2014/09/25 职场文书
关于法制教育的宣传语
2015/07/13 职场文书
初中政治教学工作总结
2015/08/13 职场文书