我理解代码而不是提到的选项

时间:2013-03-26 08:52:28

标签: oracle plsql oracle10g

我被问到一个问题,答案是选项。我们需要选择2个选项(多选问题类型)。问题是“哪两个语句会成功调用此程序?”。正确的选择是(我没有提到其他错误的选项):

  1. Execute upd_bat_stat;
  2. Execute upd_bat_stat(v_ab=gt;10,v_id=gt;31);
  3. 我选择的第一个是正确的,但第二个我没有选择。我选择了别的东西。 我没有得到第二个编码。谁能告诉我第二种选择的含义?什么是'gt'?

         create or replace procedure upd_bat_stat(v_id IN number default 10, 
                                                  v_ab IN number default 4)
         is
         begin
            update player_bat_stat
            set at_bats = at_bats + v_ab
            where player_id = v_id;
            commit;
         end;
    

1 个答案:

答案 0 :(得分:2)

在HTML中,符号>被翻译为>。所以第二句应理解为:

Execute upd_bat_stat(v_ab => 10, v_id => 31);

当然,这是在PL / SQL中调用过程的标准方法之一,例如:

SQL> BEGIN
  2     DBMS_OUTPUT.put_line(dbms_random.value(low => 0, high => 10));
  3  END;
  4  /

1.8144949728486423597614495316809370386

进一步阅读:Positional, Named, and Mixed Notation for Actual Parameters

从11gR2开始,您还可以在SQL中使用命名参数:

SQL> select dbms_random.value(low => 0, high => 10) res from dual;

RES
----------------------------
5.68503743363485069064449316