PLSQL符号“=>”的含义

时间:2012-06-08 00:15:45

标签: oracle plsql

=>符号在PL / SQL中的含义是什么? e.g。

GetAttrNumber(toitemtype => toitemtype,
              toitemkey => toitemkey,
              toactid => toactid)

2 个答案:

答案 0 :(得分:22)

这是将参数传递给PL / SQL过程或函数的关键字/值表示法。

左侧是参数的名称,右侧是传递的值。

当您不想保留参数的特定顺序或自我记录代码时,它非常有用。

答案 1 :(得分:11)

如果您有一长串参数并且只需要指定它们的子集,那么关键字/值表示法可能非常有用。特别是如果你想跳过参数列表(this requires the skipped parameters to use DEFAULT values)中间的一些参数。例如,如果你有这样的程序:

PROCEDURE my_proc(
    p_param1  NUMBER DEFAULT 1
  , p_param2  NUMBER DEFAULT 2
  , p_param3  NUMBER DEFAULT 3
  , p_param4  NUMBER DEFAULT 4
  , p_param5  NUMBER DEFAULT 5 
);

现在你可以call my_proc() only with only first and last parameter

my_proc(p_param1 => value1,p_param5 => value2);