Oracle PL/SQL/PL SQL/Default Value

Материал из SQL эксперт
Перейти к: навигация, поиск

Assign default value

 
SQL>
SQL>
SQL>  declare
  2      days_in_week   constant number := 7;
  3      weeks_in_month number default 4;
  4    begin
  5      weeks_in_month := 5;
  6    end;
  7    /
PL/SQL procedure successfully completed.
SQL>



avoid declaration exception for default value

 
SQL>
SQL>
SQL>  begin
  2      declare
  3        myNumber number default "MY NUMBER";
  4      begin
  5        null;
  6      exception
  7        when OTHERS then
  8          dbms_output.put_line("Exception caught in inner block");
  9      end;
 10    exception
 11      when others then
 12        dbms_output.put_line("Exception caught in outer block");
 13        raise;
 14    end;
 15    /
 begin
*
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error: character to number conversion error
ORA-06512: at line 13

SQL>



using the DEFAULT keyword to assign a value to a variable:

 
SQL>
SQL>
SQL> declare
  2    l_days_in_week constant number := 7;
  3    l_weeks_in_month number default 4;
  4  begin
  5    l_weeks_in_month := 5;
  6  end;
  7  /
PL/SQL procedure successfully completed.
SQL>