您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

使用命名参数调用

您可以使用令牌 => 调用传递命名参数的过程。

例如:

CALL myproc (i => 2)

使用命名参数时,可以忽略过程签名中参数的顺序。运行以下命令,您可以尝试下面的一些示例。

create type mytab_t as table (i int);

create table mytab (i int);

insert into mytab values (0);

insert into mytab values (1);

insert into mytab values (2);

insert into mytab values (3);

insert into mytab values (4);

insert into mytab values (5);

create procedure myproc (in intab mytab_t,in i int, out outtab mytab_t) as

begin

outtab = select i from :intab where i > :i;

end;

现在,您可以使用以下 CALL 可能性:

call myproc(intab=>mytab, i=>2, outtab =>?);

或者

call myproc( i=>2, intab=>mytab, outtab =>?)

两种调用格式会产生相同的结果。