子程序
-
命名的PL/SQL块,编译并存储在数据库中。
-
子程序的各个部分:
声明部分 可执行部分 异常处理部分(可选)
-
子程序的分类:
过程-执行某些操作 函数-执行操作并返回值
存储过程简介
-
什么是过程
将SQL或者PL/SQL代码块集中用于完成特定功能的集合
-
过程的结构
声明部分:包括类型、变量、游标 执行部分:完成功能而编写的SQL语句或则是PL/SQL代码块 异常处理部分
创建存储过程
CREATE [OR REPLACE] PROCEDURE
<procedure name> [(<parameter list> )]
IS|AS
<local variable declaration>
BEGIN
<executable statements>
[EXCEPTION
<exception handlers>]
END;
删除存储过程的语法是什么?
drop procedure hello;
存储过程的参数模式
- 存储过程传递参数模式
IN
用于接受调用程序的值
默认的参数模式
OUT
用于向调用程序返回值
IN OUT
用于接受调用程序的值,并向调用程序返回更新的值
函数简介
-
什么是函数
与过程类似,是一组SQL语句或者PL/SQL语句块的集合,同时能够返回执行结果
-
函数的结构
声明部分:包括类型、变量、游标 执行部分:完成功能而编写的SQL语句或则是PL/SQL代码块 异常处理部分
过程与函数的比较
过程 | 函数 |
---|---|
标识符 - PROCEDURE | FUNCTION |
返回值 - 必须使用变量形参 | 用函数名直接返回 |
赋值- 不能赋值并定义类型 | 可以定义类型,并直接赋值 |
调用方式 - 独立的过程调用句 | 以表达式方式调用 |
目的- 完成一系列的数据处理 | 获得函数返回值 |