PL/SQL 中的实际参数与形式参数的区别

30 Aug 2024 | 3 分钟阅读

什么是 PL/SQL?

PL/SQL 是一种结构化语言,它是 SQL 和过程式语言的结合。代码以块的形式编写,并将此块传递给 Oracle 引擎,在那里执行并产生输出。

借助 PL/SQL,我们可以一次性使用该块解决许多 SQL 查询。PL/SQL 拥有自己的异常处理块,并且可以在安装了 Oracle 引擎的任何系统或硬件上运行。它本质上是 SQL 的扩展版本,主要用于创建应用程序。PL/SQL 的基本单元是一个块,该块能够执行任何特定的任务。

使用 PL/SQL 的目的是减少 Oracle 引擎的流量,并一次性传递多个 SQL 语句来提高速度。它优于 SQL,因为 SQL 不提供错误检查功能,而 PL/SQL 提供。PL/SQL 块一旦定义就可以多次使用。它具有变量、常量、过程等许多标识符。

PL/SQL 中的参数

参数是一组变量,它们被传递到函数或过程,或者被过程返回。它也称为函数的参数。参数的数量以及这些参数在过程中使用方式取决于程序员。

在 PL/SQL 中使用参数有三种方式:

1. IN 模式

这是默认模式,其中将常量值从调用它的地方传递到函数或子程序。

2. OUT 模式

在此模式下,值或参数从子程序传递到调用环境。

3. IN OUT 模式

它是上述模式的组合。值既可以从调用位置或环境传递到子程序,也可以从子程序传递到调用环境。

PL/SQL 参数的类型

实际参数

通过函数调用传入的值或表达式称为实际参数。这些参数不需要定义数据类型,它们在子程序中被引用。

示例

输出

FUNCTION CREATED.
SQL>|

形式参数

形式参数是子程序中使用的变量或表达式,并且必须定义这些变量的数据类型。它们的作用域是子程序的定义,并且在该子程序之外无效。

示例

输出

sum of the numbers thrugh the functions is: 69
SQL>|

实际参数与形式参数的区别

实际参数形式参数
实际参数是指从被调用的函数调用或被调用的子程序调用中引用的表达式或变量。形式参数是指在子程序的参数列表中引用的表达式。
实际参数不需要定义数据类型。形式参数中必须指定变量的数据类型。
实际参数可以是任何常量值或任何名称。形式参数就像是写在函数头部的子程序或函数的局部变量。
实际参数是写在函数调用中的变量,并在调用函数时使用。形式参数是写在函数定义中并带有正确数据类型的变量。
实际参数存在于调用函数中。形式参数存在于被调用的函数中。
插入到函数调用中的参数称为实际参数。插入到函数定义中的参数称为形式参数。

下一主题区别