下载此文档

零点起飞学oracle之自定义函数与存储过程.pptx


文档分类:IT计算机 | 页数:约29页 举报非法文档有奖
1/29
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/29 下载此文档
文档列表 文档介绍
第16章自定义函数与存储过程?在 Oracle 数据库中,可以将一些固定的操作集中起来由 Oracle 数据库服务器来完成,以实现某个任务,这种方法就是存储过程。用户自定义函数与存储过程相似,只能返回单一值或表。自定义函数和存储过程。可以被方便地调用执行,从而在很大程度上实现了 PL/SQL 代码的复用。本章主要讲解 Oracle 中的自定义函数、 Oracle 中的存储过程、包装函数与存储过程——程序包。 使用自定义函数?函数是由一个或者多个 PL/SQL 的语句组成的子程序, 可用于封装代码以便重新使用。 Oracle 中允许用户创建自己的用户定义函数。函数一般用于计算和返回一个值。 创建自定义函数?函数主要有以下部分组成。?输入部分,函数允许有输入参数,当有输入参数时, 调用函数应该为这些参数赋值。?输出部分,函数需要有输出数据,也就是返回值。?函数体,函数中可以进行算术表达式运算,也允许调用 SQL 内置函数或其他自定义函数。 创建自定义函数?创建函数应该使用 create or replace function 命令,其使用格式如下所示。? create or replace function 函数名 return 返回值的类型 as ? begin ?函数定义? end 函数名; ?其中, create or replace 遵循了 Oracle 中创建对象的一般语法; function 指定所创建的对象为函数; return 则指定返回值的类型; as引起函数的定义;函数的定义应该使用 begin end 块来实现。 创建自定义函数?1. 创建自定义函数?【示例 16-1 】我们尝试创建一个最简单的函数 getEmCount ,该函数返回表 employeenew 中的记录数目。 创建自定义函数?2. 在数据字典中查看自定义函数的信息?当自定义函数创建之后,可以在数据字典中获得相应信息。与之相关的视图主要有两个: user_objects 与 user_source 。?【示例 16-2 】下面在数据字典中查看自定义函数的信息。 创建自定义函数?3. 调用自定义函数?在 PL/SQL 环境中可以利用函数名+括号的形式,来直接调用函数,如同函数是一个全局变量。?【示例 16-3 】在 PL/SQL 环境中调用函数 getEmCount 。 使用函数的参数?在示例 16-1 中所创建和使用的函数,没有参数。 Oracle 中的函数允许带有输入类型参数、输出类型参数、输入输出类型参数。当自定义函数带有参数时,只需在声明语句的函数名之后添加小括号,并在小括号内指定参数的数据类型和名称即可,其语法形式如下所示。 使用函数的参数? create or replace function 函数名(数据类型 1参数 1, 数据类型 2参数 2…) return 返回值的类型 as ? begin ?函数定义? end 函数名; ?在“函数名(数据类型 1参数 1, 数据类型 2参数 2…)”中, 小括号内的参数列表中的各参数以逗号作为分隔符。其他部分与无参数函数完全相同。?【示例 16-4 】函数 getEmCount 只能获得表 employeenew 的记录数。我们可以通过向其传递表名参数来获得某个表中的记录数。 利用函数的确定性提高数据库效率?函数的确定性就是指我们输入相同的一个参数,其返回的结果应该一致。如果第一次输入了一个参数值, 第二次再输入相同的参数值的时候返回值肯定与第一次一样,那么 Oracle 就会直接拿到第一次的结果,不再重复执行该函数, 提高效率。函数的确定性,在于可以根据函数名和参数来缓存执行结果。当再次利用相同的参数调用函数时, Oracle 将直接获得缓存值, 而不会执行函数的实际代码,从而提高工作效率。

零点起飞学oracle之自定义函数与存储过程 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数29
  • 收藏数0 收藏
  • 顶次数0
  • 上传人cnanjringh
  • 文件大小0 KB
  • 时间2016-07-20