09 2012 档案
PL/SQL学习笔记八:触发器
摘要:触发器类型 触发器在数据库里以独立的对象存储,它与存储过程不同的是,存储过程通过其它程序来启动运行或者直接启动运行,而触发器是由一个事件来启动运行。即触发器是当某个事件发生时自动地隐式运行。并且,初发期不能接收参数。运行触发器叫触发或点火(firing)。ORACLE事件指的是对数据库的表进行的INSERT、UPDATE及DELETE操作或队试图进行类似的操作。ORACLE将触发器的功能扩展到了触发ORACLE,如数据库的启动与关闭等。 DML触发器:ORACLE可以在DML语句进行触发,可以在DML操作前或操作后进行触发,并且可以对每个行或语句操作上进行触发。 替代触发器:由于ORACLE里
阅读全文
PL/SQL学习笔记七:包的创建和应用
摘要:包是一组相关过程、函数、变量、常量和游标等PL/SQL程序设计元素的组合,具有面向对象程序设计语言的特点,是对PL/SQL程序设计元素的封装。包类似C++和JAVA语言中的类,其中变量相当于类中的成员变量,过程和函数相当于类方法。 与类相同,包中的元素也分为公用元素和私用元素两种,这两种元素的区别是他们允许访问的程序范围不同,即它们的作用域不同。公用元素不仅可以被包中的函数、过程所调用,也可以被包外的PL/SQL程序访问,而私有元素只能被包内的函数和过程所访问。 在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
阅读全文
PL/SQL学习笔记五:异常错误处理
摘要:异常处理概念有三种类型的异常错误: 1、预订义(Predefined)错误:ORACLE预定义的异常情况大约有24个,对这种异常情况的处理,无需再程序中定义,由ORACLE自动将其引发。 2、非预定义(Unpredefined)错误:即其他标准的ORACLE错误。对这种异常情况的处理,需要用户在程序中定义,然后由ORACLE自动将其引发。 3、用户定义(User_define)错误:程序执行过程中,出现编程人员认为的非正常情况。对这种异常情况的处理,需要用户在程序中定义,然后显式地在程序中将其引发。异常处理部分一般放在PL/SQL程序体的后半部,结构为: EXCEPTION WHEN firs
阅读全文
PL/SQL学习笔记四:游标的使用
摘要:游标概念为了处理SQL语句,ORACLE必须分配一片叫上下文(context area)的区域来处理所必需的信息,其中包括要处理的行的数目,一个指向语句被分析以后的标识形式的指针以及查询的活动集(active set)。游标是一个指向上下文的句柄(handle)或指针。通过游标,PL/SQL可以控制上下文区域和处理语句时上下文区徽发生些什么事情。对于不同的SQL语句,由表的使用请款不同:非查询sql语句,游标为隐式的;结果是单行的sql查询语句,游标可以是隐式的也可以是显式的;结果是多行的sql查询语句,游标是显式的。处理显式游标处理显示游标需要的步骤: 1、定义游标:就是定义一个游标名,以及
阅读全文
PL/SQL学习笔记三:PL/SQL流程控制语句
摘要: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
阅读全文
PL/SQL学习笔记二:PL/SQL块儿结构和组成元素
摘要:PL/SQL块PL/SQL程序由三个块组成,即声明部分、执行部分、异常处理部分。PL/SQL块的结构如下: DECLARE /* 声明部分:在此声明PL/SQL用到的变量、类型及游标,以及局部的存储过程和函数 */ BEGIN /*执行部分:过程及SQL语句,即程序的主要部分 */ EXCEPTION /*执行异常部分:错误处理 */ END;其中执行部分是必须的。PL/SQL可以分为三类:1、无名块:动态构造,只能执行一次。2、子程序:存储在数据库中的存储过程、函数及包等。当在数据库上建立好可以在其它程序中调用它们。3、触发器:当数据库发生操作时,会触发一些事情,从而自动执行相应的程序。PL
阅读全文
PL/SQL学习笔记一:PL/SQL程序设计简介
摘要:PL/SQL是一种高级数据库程序设计语言,用于在各种环境下对ORACLE数据库进行访问。由于该语言集成于数据库服务器中,所以PL/SQL代码可以对数据进行快速高效的处理。什么是PL/SQLPL/SQL是Procedure Language & Structured Query Language的缩写。ORACLE的SQL是支持ANSI(American national Standards Institute 美国国家标准协会)和ISO92(International Standard Organization)标准的产品。PL/SQL是对SQL语言存储过程语言的扩展。从ORACLE6
阅读全文