摘要:
触发器类型 触发器在数据库里以独立的对象存储,它与存储过程不同的是,存储过程通过其它程序来启动运行或者直接启动运行,而触发器是由一个事件来启动运行。即触发器是当某个事件发生时自动地隐式运行。并且,初发期不能接收参数。运行触发器叫触发或点火(firing)。ORACLE事件指的是对数据库的表进行的INSERT、UPDATE及DELETE操作或队试图进行类似的操作。ORACLE将触发器的功能扩展到了触发ORACLE,如数据库的启动与关闭等。 DML触发器:ORACLE可以在DML语句进行触发,可以在DML操作前或操作后进行触发,并且可以对每个行或语句操作上进行触发。 替代触发器:由于ORACLE里 阅读全文
摘要:
包是一组相关过程、函数、变量、常量和游标等PL/SQL程序设计元素的组合,具有面向对象程序设计语言的特点,是对PL/SQL程序设计元素的封装。包类似C++和JAVA语言中的类,其中变量相当于类中的成员变量,过程和函数相当于类方法。 与类相同,包中的元素也分为公用元素和私用元素两种,这两种元素的区别是他们允许访问的程序范围不同,即它们的作用域不同。公用元素不仅可以被包中的函数、过程所调用,也可以被包外的PL/SQL程序访问,而私有元素只能被包内的函数和过程所访问。 在PL/SQL程序设计中,使用包不仅可以使程序设计模块化,对外隐藏包内所使用的信息(通过使用私有变量),而且可以提高程序的执行效率. 阅读全文
摘要:
ORACLE提供可以把PL/SQL程序存储在数据库中,并可以在任何地方来运行它。这样就叫存储过程或函数。过程和函数统称为PL/SQL子程序,他们是被命名的PL/SQL块。均存储在数据库中,并通过输入、输出参数或输入/输出参数与其调用者交换信息。过程和函数的唯一区别是函数总向调用者返回数据,而过程则不返回数据。创建函数1、建立内嵌函数 语法如下: CREATE [OR PEPLACE] FUNCTION function_name [(argment[{IN | IN OUT}] type, argment[{IN | OUT | IN OUT}] type)] RETURN return_ty 阅读全文
摘要:
异常处理概念有三种类型的异常错误: 1、预订义(Predefined)错误:ORACLE预定义的异常情况大约有24个,对这种异常情况的处理,无需再程序中定义,由ORACLE自动将其引发。 2、非预定义(Unpredefined)错误:即其他标准的ORACLE错误。对这种异常情况的处理,需要用户在程序中定义,然后由ORACLE自动将其引发。 3、用户定义(User_define)错误:程序执行过程中,出现编程人员认为的非正常情况。对这种异常情况的处理,需要用户在程序中定义,然后显式地在程序中将其引发。异常处理部分一般放在PL/SQL程序体的后半部,结构为: EXCEPTION WHEN firs 阅读全文
摘要:
游标概念为了处理SQL语句,ORACLE必须分配一片叫上下文(context area)的区域来处理所必需的信息,其中包括要处理的行的数目,一个指向语句被分析以后的标识形式的指针以及查询的活动集(active set)。游标是一个指向上下文的句柄(handle)或指针。通过游标,PL/SQL可以控制上下文区域和处理语句时上下文区徽发生些什么事情。对于不同的SQL语句,由表的使用请款不同:非查询sql语句,游标为隐式的;结果是单行的sql查询语句,游标可以是隐式的也可以是显式的;结果是多行的sql查询语句,游标是显式的。处理显式游标处理显示游标需要的步骤: 1、定义游标:就是定义一个游标名,以及 阅读全文
摘要:
PL/SQL的流程控制语句包括如下三类: 1>、控制语句:IF语句; 2>、循环语句:LOOP语句,EXIT语句; 3>、顺序语句:GOTO语句,NULL语句。条件语句 IF <布尔表达式> THEN PL/SQL和SQL语句END IF; IF <布尔表达式> THEN PL/SQL和SQL ELSE 其它语句 END IF; IF <布尔表达式> THEN PL/SQL和SQL ELSIF <其它布尔表达式> THEN 其它语句 ELSIF <其它布尔表达式> THEN 其它语句 ELSE 其它语句 END IF 阅读全文