Oracle:不显示参数默认值

时间:2018-07-03 14:47:12

标签: oracle parameters default-value

我编写了以下过程:

  create or replace PROCEDURE num_mandati ( persona IN parlamento2018.parlamentari.cf%type default '1234567890ABCDEF') IS  
     nomePersona parlamentari.nome%type;
     cognomePersona parlamentari.cognome%type;
     n_codfis           NUMBER := 0;
     nessunParlamentare EXCEPTION;


  BEGIN

    dbms_output.put_line('persona: ' ||persona);
  END num_mandati;

在过程主体中,有一条输出指令,但未显示参数“角色”的默认值。 parlamentari表的cf列的类型为varchar2(16)。 为什么不显示参数值?

1 个答案:

答案 0 :(得分:1)

在不知道调用过程的方式的情况下,我看到两个可能的原因: 您没有SET SERVEROUTPUT ON或您传递了NULL值:

SQL> exec num_mandati;

PL/SQL procedure successfully completed.

SQL> SET SERVEROUTPUT ON
SQL> exec num_mandati;
persona: 1234567890ABCDEF

PL/SQL procedure successfully completed.

SQL> exec num_mandati('');
persona:

PL/SQL procedure successfully completed.

SQL>