PL/SQL--Procedure(过程)和Function(函数)的区别
2011-12-21 23:13
411 查看
过程和函数的区别:
过程 | 函数 |
使用关键字 procedure 声明 | 使用关键字 function 进行声明 |
都可以使用 IN/OUT/IN-OUT 格式的参数 | |
在定义的时候,不需要进行 return( 返回值 ) | 需要指定使用 return 定返回值的类型 |
都可以由声明、执行、异常处理三个部分组成 | |
可以作为独立的 PL/SQL 语句单独执行 | 在 PL/SQL 中必须指定变量接收返回,必须在表达式中使用 |
可以在内部包含 RETURN 子句,类似 JAVA 中的使用 | 必须包含一个有效的 RETURN 子句 |
在 COMMAND 命令窗口中,使用 EXECUTE 命令执行过程 | 借用 select 语句来执行 |
在 DDL 和 SELECT 语句中不可以调用过程 | 在 DDL 和 SELECT 语句中可以调用函数 |
都可以使用 CALL 参数来调用相应的函数或过程 : V_SQL_F := 'CALL TEST_FUNC_P(:P_1) INTO :V_RESULT'; V_SQL_P := 'CALL TEST_CALL_P(:P_1)'; EXECUTE IMMEDIATE V_SQL_F USING IN V_I_P1, OUT V_RESULT; EXECUTE IMMEDIATE V_SQL_P USING IN V_I_P1; | |
都可以使用默认值,都可以使用位置表示法和名称表示法 | |
当需要返回多个值的时候,推荐使用过程 | 当需要返回一个值的时候,推荐使用函数 |
相关文章推荐
- pl/sql 函数及与存储过程的区别
- MySQL 的存储过程 procedure 与 函数 function 的区别和使用方法
- 存储过程(PROCEDURE)和函数(FUNCTION)的区别。
- oracle PL/SQL(procedure language/SQL)程序设计之函数+过程+包(转)
- MySQL 的存储过程 procedure 与 函数 function 的区别和使用方法
- MySQL 的存储过程 procedure 与 函数 function 的区别和使用方法
- oracle PL/SQL(procedure language/SQL)程序设计之函数+过程+包
- SQL存储过程与函数的区别
- oracle包package内建管道函数pipelined、过程procedure和函数function的代码
- PL/SQL-procedure-function-package创建
- PL/SQL-procedure-function-package创建
- 存储过程与函数的区别,函数可以嵌入sql语句from中使用,存储过程不行
- PL/SQL --> 动态SQL调用包中函数或过程
- Oracle 存储过程(procedure)和函数(Function)的区别
- 如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)
- Oracle PL/SQL 程序设计读书笔记 - 第17章 过程、函数与参数
- PL/SQL中的存储过程与函数
- ORACLE PL/SQL编程之六:把过程与函数说透
- oracle 游标,函数 function , 存储过程 PROCEDURE , 触发器 Trigger
- ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)