Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / Function Procedure Packages
 

Demonstration of a nested procedure block

SQL> SQL> SET ECHO ON SQL> SET SERVEROUTPUT ON SQL> SQL> DECLARE   2    first_number    NUMBER;   3    second_number   NUMBER;   4   5    PROCEDURE swapn (num_one IN OUT NUMBER, num_two IN OUT NUMBER) IS   6      temp_num    NUMBER;   7    BEGIN   8      temp_num := num_one;   9      num_one := num_two;  10      num_two := temp_num ;  11    END;  12  13  BEGIN  14  15    first_number := 10;  16    second_number := 20;  17    DBMS_OUTPUT.PUT_LINE('First Number = ' || TO_CHAR (first_number));  18    DBMS_OUTPUT.PUT_LINE('Second Number = ' || TO_CHAR (second_number));  19  20    --Swap the values  21    DBMS_OUTPUT.PUT_LINE('Swapping the two values now.');  22    swapn(first_number, second_number);  23  24    --Display the results  25    DBMS_OUTPUT.PUT_LINE('First Number = ' || to_CHAR (first_number));  26    DBMS_OUTPUT.PUT_LINE('Second Number = ' || to_CHAR (second_number));  27  END;  28  / First Number = 10 Second Number = 20 Swapping the two values now. First Number = 20 Second Number = 10 PL/SQL procedure successfully completed. SQL>