WEB开发网
开发学院数据库Oracle Oracle PL/SQL编程风格与系统性能提高 阅读

Oracle PL/SQL编程风格与系统性能提高

 2007-05-06 12:06:59 来源:WEB开发网   
核心提示: 2.2使用%TYPE、%ROWTYPE方式声明变量程序设计中常常要通过变量来实现程序间的数据传递,即将表中数据赋值给变量,Oracle PL/SQL编程风格与系统性能提高(4),或是把变量值插入到表中,而要完成这些操作的前提就是,可以在多个方面提高系统的性能,提高开发效率,表中数据与变量类

2.2 使用%TYPE、%ROWTYPE方式声明变量

程序设计中常常要通过变量来实现程序间的数据传递,即将表中数据赋值给变量,或是把变量值插入到表中。而要完成这些操作的前提就是,表中数据与变量类型要一致。然而在实际中,表中数据或类型、或宽度有时要变化,一旦变化,就必须去修改程序中的变量声明部分,否则程序将不能正常运行。为了减少这部分程序的修改,编程时使用%TYPE、%ROWTYPE方式声明变量,使变量声明的类型与表中的保持同步,随表的变化而变化,这样的程序在一定程度上具有更强的通用性。

3 提高程序自检能力

一个好的应用系统不仅要有好的用户界面、齐全的功能处理模块,而且要有很强的错误处理能力。因此要求编程人员要预测可能的各种情况(声明异常情态并引发),并尽可能从错误中恢复过来(编写相应异常情态处理器代码),这就是Oracle8中的异常部分的程序设计内容。然而这部分的设计绝非易事。在异常部分的最后设置OTHERS异常情态处理器是个很好的编程习惯,因为它为运行时刻捕捉到的其它错误指明了处理去向,从而保证了程序的正常运行。格式如下:BEGIN

EXCEPTION
 WHEN excep—name1 THEN
 …
 WHEN excep—name2 THEN
 …
 WHEN OTHERS THEN
 …
END;

但是对程序中出现的错误要做到正确的处理(即正确选择异常处理器并执行它),还必须弄清楚异常情态的传播问题。

异常情态的传播指的是当在程序块的声明、执行、异常部分分别出现异常情态时,或在本块中没有相应的异常处理器时会将这个异常情态传播到哪里,会去激发那个块中的处理器。传播规则是这样的:当一个异常情态是在块的执行部分引发的(最常见的),PL/SQL使用下面的规则确定激活哪个异常处理器。(1)若当前块对该异常情态设置了处理器,则执行它并成功完成该块的执行,然后控制转给包含块。(2)若当前块没有该处理器,则通过在包含块中引发它来传播异常情态。然后对包含块执行步骤1。另外,无论是在声明部分引发了一个异常情态,还是在异常处理部分引发,则该异常情态将立即传播给包含块。在包含块引用上述规则进行异常情态的处理,即使在当前块设置了OTHERS处理器也不会被执行。

4 易于阅读

●对于子程序、触发器、包等带名的程序块,使用结束标识。例如:CREATE OR REPLACE PROCEDURE addstud IS

BEGIN

END addstud;/* 此处的过程名add是可选的,写上较好,与块开始的CREATE相对应 */

●采用统一的标识符命名规则。对于诸如变量名、子程序名、触发器名等数据库对象命名时,应尽量能表示其功能用途或含义。

●对于过程性语句与程序块采用缩进书写风格,会使得程序结构清晰、层次分明、易阅读。

●采用统一的字母大小写。尽管PL/SQL程序中不区分大小写,但是采用统一的字母大小写(如前文叙述的大小写约定)将在很大程度上提高程序的可阅读性。

●加注释。

●一条语句分多行书写,不让其自动分行。

这方面的内容大家都已很熟悉,不再详述了。

总之,良好的程序设计风格,可以在多个方面提高系统的性能,提高开发效率,很值得我们在工作中给以重视。

上一页  1 2 3 4 

Tags:Oracle PL SQL

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接