plsql基础学习--十、自定义函数

一、概述

1.函数是可以返回值的命名的plsql子程序

2.oracle的函数是一个独有的对象,它也是由plsql语句编写而成。

但不同之处在于:函数必须返回某些值,而存储过程可以不返回任何值。

3.创建函数的语法:

CREATE [OR REPLACE] FUNCTION

<function name> [(param1,param2)]

RETURN <datatype> IS|AS

   [local declarations]

BEGIN

  excutable statements;

扫描二维码关注公众号,回复: 4929478 查看本文章

  RETURN result;

EXCEPTION

   exception handlers;

END;

4.定义函数的限制

(1)函数只能接收IN参数,而不能接收IN OUT或OUT参数

(2)形参不能是plsql类型

(3)函数的返回类型也必须是数据库类型

5.访问函数的两种方式:

(1)使用plsql块

(2)使用sql语句

二、使用示例

判断今天是否为当月的第一天,是返回1,否则返回0

统计字符串占的字节数

根据员工编号获得所在部门的名称

判断输入的工资是否介于最高工资和最低工资之间

使用游标统计emp表的记录数量

三、过程和函数的比较

过程 函数
作为PL/SQL语句执行 作为表达式的一部分调用
在规格说明中不包含RETURN子句 必须在规格说明中包含RETURN子句
不返回任何值 必须返回单个值
可以包含RETURN语句,但是与函数不同,它不能用于返回值 必须包含至少一条RETURN语句

猜你喜欢

转载自blog.csdn.net/u010999809/article/details/85225727