Basic Oracle Concepts and Programming Question:

How To Use "IN OUT" Parameter Properly?

Tweet Share WhatsApp

Answer:

Here are the rules about IN OUT parameters:

► A formal IN OUT parameter acts like an initialized variable.
► An actual IN OUT parameter must be a variable.
► An actual IN OUT parameter passes a copy of its value to the formal parameter when entering the procedure or function.
► An actual IN OUT parameter will receive a copy of the value from the formal parameter at the end of the procedure or function.

Here is good example of a procedure with IN OUT parameters:

SQL> CREATE OR REPLACE PROCEDURE SWAP_TEST AS
2 A NUMBER := 3;
3 B NUMBER := 8;
4 PROCEDURE MY_SWAP(X IN OUT NUMBER,Y IN OUT NUMBER) AS
5 T NUMBER;
6 BEGIN
7 T := X;
8 X := Y;
9 Y := T;
10 END MY_SWAP;
11 BEGIN
12 MY_SWAP(A,B);
13 DBMS_OUTPUT.PUT_LINE('A = ' || TO_CHAR(A));
14 DBMS_OUTPUT.PUT_LINE('B = ' || TO_CHAR(B));
15 END;
16 /

SQL> EXECUTE SWAP_TEST;
A = 8
B = 3

Download Oracle Database PDF Read All 430 Oracle Database Questions
Previous QuestionNext Question
How To Use "OUT" Parameter Properly?How To Define Default Values for Formal Parameters?