PL / SQL参数


参数允许您将值传递到(IN),将值从(OUT)传递出去,或者将值传入和传出光标,函数或过程(IN OUT)。

 

参数命名

参数遵循与变量相同的PL / SQL标识符命名规则。

下表显示了参数前缀值。

前缀描述
ai参数IN
ao参数OUT
aio参数IN OUT

ai表示参数。

下表显示了使用前缀方案的参数名称示例

范围IN范围OUT范围输入
ain_idaon_idaion_id
aiv_name aov_name aiov_name
aid_birth_dateaod_birth_dateaiod_birth_date
aiv_genderaov_genderaiov_gender

 

参数声明

以下代码创建一个名为PARAMETER的包,它显示如何声明参数,其语法和参数范围。

create or replace package PARAMETER as   FUNCTION in_out_inout(aiv_in in varchar2,                        aov_out out varchar2,                        aiov_inout in out varchar2)   return varchar2;   PROCEDURE in_out_inout(aiv_in in varchar2,                         aov_out out varchar2,                          aiov_inout in out varchar2); end PARAMETER; / 

用于声明函数和过程中的参数的语法如下:

( <parameter_name_1> [IN][OUT] <data_type_1>, <parameter_name_2> [IN][OUT] <data_type_2>,... <parameter_name_N> [IN][OUT] <data_type_N>) 

其中<parameter_name>是参数的名称; 范围为IN,OUT或IN OUT; <data_type>是参数的数据类型。

我们可以使用列或行定位器来指定数据类型%TYPE或%ROWTYPE。

 

参数范围

参数关键字IN和OUT确定参数的可访问性。

IN使您的参数数据可用于被调用的游标,函数或过程。

IN参数可用于将值传递到游标,函数或过程。

OUT允许被调用的函数或过程在被调用的PL / SQL块中设置参数的值。

OUT参数可用于将值从函数或过程中传递出来。

IN和OUT的组合允许两个级别的可访问性。

IN OUT参数可用于执行这两个操作。