您可以使用令牌 => 调用传递命名参数的过程。
例如:
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 =>?)两种调用格式会产生相同的结果。