• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
用Oracle和Python武装你的头脑(6)
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
用Oracle和Python武装你的头脑(6)
软件发布 用Oracle和Python武装你的头脑(6)
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 文章首页 >> 认证考试 >> Oracle认证 >> Oracle指导 >> 用Oracle和Python武装你的头脑(6)

用Oracle和Python武装你的头脑(6)

添加时间: 2008-4-27 21:21:45  作者: Oracle指导  阅读次数:20   来源: http://www.d9soft.com

       

以上就是全部代码了。注意,您这次在 SQL 字符串中使用了绑定变量,并在一个单独字典中为它们提供了值。使用绑定变量可以帮助您摆脱 SPCSP(防止错误使用共享池协会)的麻烦。

从查询中获取结果略微复杂一些。对游标对象调用 execute() 后,可以使用 fetchone() 一次获取一行,也可以使用 fetchall() 获取所有行的列表。无论在哪种情况下,每一行均采用字节组(即可以由数值索引访问的有序值序列)的形式。例如,我们将编写 compareInitOra.py 来打印与 V$PARAMETER 中的当前值冲突的 init_orcl.ora 参数:

import readInitOra, cx_Oracle

def readLiveParams():

liveParams = {}

orcl = cx_Oracle.connect('scott/tiger@orcl')

curs = orcl.cursor()

curs.execute('SELECT name, value FROM V$PARAMETER')

row = curs.fetchone()

while row:

(param, val) = (row[0], row[1])

liveParams[param.upper()] = val

row = curs.fetchone()

return liveParams

liveParams = readLiveParams()

fileName = 'init_orcl.ora'

fileParams = readInitOra.read(fileName)

for (param, val) in fileParams.items():

liveVal = liveParams.get(param)

if liveVal != val:

print """For %s, V$PARAMETER shows %s,

but the file %s shows %s""" %

(param, liveVal, fileName, val)
 

Python 的对象关系映射工具

您可能对对象关系映射 (ORM) 工具很感兴趣,这些工具可以取代 SQL 的编写并为编程人员提供一个面向对象的界面。Oracle TopLink 便是一个适用于 Java 的对象关系映射器的例子。用于 Python 的与 Oracle 兼容的 ORM 工具有:

Modeling Object-Relational Bridge for Python

forgetSQL

ll.orasql

SQLObject(马上或很快便将支持 Oracle)

sqlWrap.p

该脚本引入了一些您还没见过的技巧:

对字典 fileParams 调用 items() 将返回一个(键, 值)对列表。可以通过在 for 语句中指定两个循环变量来遍历这些键值。

调用 liveParams.get(param) 的工作方式类似于 liveParams[param],区别在于如果在 liveParams 中未找到参数,则将返回一个错误 - 非常类似于“ORA-01403:no data found in PL/SQL”消息。而 liveParams.get(param) 将在 liveParams 中不存在参数的情况下返回 None。

Python 可以使用 % 运算符执行字符串替换。与 C 的 printf 相似,%s 表示将在该点插入一个字符串形式的值。这些值按顺序从 % 之后的字节组中提取。

最后一行代码比您在没有换行符的情况下进行键入运行时间更长,因此您使用了一个反斜线,从而打破了 Python 将换行符解释为命令结尾这一通常的规则。

 

上下文章:

 

上一篇文章: 用Oracle和Python武装你的头脑(1) 下一篇文章: RMAN自动备份的脚本(windows环境)

相关文章:

  • Windows7到来,你的PC准备好了吗?
  • 毒霸:木马武装模块加载木马
  • 你的email服务器准备好应对账号搜集攻击了吗
  • 配置你的第一台e-mail服务器(一)
  • 配置你的第一台e-mail服务器(二)

相关软件:

  • 考考你的记忆力 0.0.0.1
  • Ecora Enterprise Auditor for Oracle-破解补丁 Cracked v3_6_5185
  • IronPython V2.0 Beta 1
  • OptionsOracle V1.3.1
  • Oracle 8 故障解决手册(PDF)
  • Oracle WebServer 中文手册(CHM)

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

Oracle认证分类导航

  • Oracle动态
  • Oracle指导
  • Oracle题库

本类经典文章推荐

  • Oracle中关于逻辑备份与恢复
  • Oracle开发人员JAVA存储过程
  • 为数据库的表自动生成行号
  • Oracle中的OOP概念
  • 用java从oracle取数
  • 冷备份移植到另一台Solaris机器上
  • 如何将excel数据导入oracle中
  • Oracle10.2g安装记录
  • 数据库监控工具ForOraclev1.2
  • oracle双机群集系统

Oracle指导阅读排行

  • Oracle系统表查询
  • 实例:Oracle导出EXCEL文件
  • Oracle常用的OCI函数上
  • Oracle企业管理器(OEM 2.1)使用...
  • Tomcat+SQLServer连接池配置
  • 如何将excel数据导入oracle中
  • 如何取出某一用户的密码 再原样改...
  • 实例:Oracle导出EXCEL文件
  • 案例学习Oracle错误:ORA-00604
  • 案例学习Oracle错误:ORA-00060

Oracle认证阅读总排行

  • Oracle系统表查询
  • 实例:Oracle导出EXCEL文件
  • Oracle常用的OCI函数上
  • 在ORACLE的存储过程中如何做简单的...
  • Oracle企业管理器(OEM 2.1)使用...
  • Tomcat+SQLServer连接池配置
  • 如何将excel数据导入oracle中
  • AIX下自动启动Oracle数据库与监听...
  • 如何取出某一用户的密码 再原样改...
  • 实例:Oracle导出EXCEL文件

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有