[Oracle]用Oracle和Python武装你的头脑
作者:Catherine Devlin 来源:Oracle 添加时间:2006-5-26 9:52:55PL/SQL 比较适合于 Oracle 数据库中的编程任务。而大多数 Oracle 专业人员并不会局限于完全在数据库中进行工作。您可能曾经遇到过许多不便于使用甚至无法使用 PL/SQL 的任务,如操作磁盘上的文件、调用外部程序或 shell 脚本、执行复杂的文本分析以及频繁执行面向对象的工作。如果 PL/SQL 是您唯一的编程语言,那么可能会为您的 Oracle 工作带来很大的不便。
既然如此,应另外选择哪种语言呢?您的时间可能并不多,因此它应该是一种简单的语言,即易于学习和使用。某些动态语言(尤其是 Perl、Python、PHP 和 Ruby)正是因为其易用性而获得了越来越多的关注。动态语言的许多用户发现,他们编写有效代码的速度要比使用更传统的语言(如 C++ 或 Java)快很多倍。
尤其值得一提的是 Python,该语言不但易于使用,而且还更高效,它生成的代码不但具有可读性而且结构良好。因此,当您再看几个月前写的代码时,仍可以理解、修改并重用它。由于具备近乎自描述的外观,因此 Python 清晰、简洁的语法有时被称作“可执行的伪代码”。Python 是一种高度面向对象的语言,它易于学习并遵循良好的编程风格,即使那些没有经过正式软件工程培训的用户也可以使用它。由于易于学习,因此它无论是对于新手还是对于专家都具有很大的吸引力。
与 Perl 一样,Python 的功能可以满足各种软件需要;该语言的简单并不代表它肤浅和应用面窄。一旦您使用了 Python,您就不会再想使用第三种语言。
最后,Python 是免费的跨平台开放源代码软件。Python 实在值得一试!
本文并不尝试对 Python 进行全面的介绍或细致的讲解,而是创建一个有用的示例应用程序,用以演示对 Oracle 用户最重要的 Python 功能。如果您确信 Python 值得进一步研究,那么本文提供的链接可以为您提供更多信息。
快速入门
如果您正在运行 Linux,则可能已经拥有了 Python,它包含在常见的发行版本中。否则,请从 www.python.org 下载它。除了源代码以外,还提供了便于使用的 RPM 和 Windows 可执行安装程序。安装后,请确保 PATH 中包含 Python 可执行文件,然后在命令提示符下键入 python 启动交互式解释器。您将看到类似如下所示的信息:
c:\>python
Python 2.4 (#60, Nov 30 2004, 11:49:19) [MSC v.1310 32 bigt (Intel)] on win32
Type "help", "copyright", "credits", or "license" for more information.
>>>
>>> 提示符等待接受您发出的 Python 命令。与 SQL*Plus 一样,Python 允许您即席执行命令或在编写成熟的脚本之前试验命令。
按照惯例,您接下来将执行以下命令:
>>> print 'Hello, World'
解释器做出以下响应:
Hello, World
注意不要键入 Print 或 PRINT。在 Python 中,所有东西(命令、变量名等)都是区分大小写的。
使用文本文件
假设您用一个标准的 init.ora 文件来数据库中的所有默认参数。您需要将其内容与特定数据库实例的 init.ora 文件内容进行比较。
清单 1:init_default.ora
DB_BLOCK_SIZE=4096
COMPATIBLE=9.2.0.0.0
SGA_MAX_SIZE=104857600
SHARED_POOL_SIZE=50331648
清单 2:init_orcl.ora
FAST_START_MTTR_TARGET=300
SHARED_POOL_SIZE=50331648
DB_BLOCK_SIZE=8192
COMPATIBLE=9.2.0.0.0
UNDO_MANAGEMENT=AUTO
SGA_MAX_SIZE=135339844