Use record type as an OUT parameter in Oracle PL/SQL Stored Procedure

ObjectiveHow to print record type values in Oracle PL/SQL .
Solution:

Step 1: Create package fxgn_sample_pkg.

DROP PACKAGE fxgn_sample_pkg;

create or replace
  PACKAGE fxgn_sample_pkg
    as
        TYPE fxgn_sample_rectype IS RECORD (p_name varchar2(40),         
                                                                                     p_emp_id number
                                                                                    );

        type fxgn_sample_table_rectype is table of fxgn_sample_rectype;

        procedure fxgn_sample_prc (fxgn_sample_table_rec1 OUT fxgn_sample_table_rectype                                                                            );
END fxgn_sample_pkg;
/

create or replace
  PACKAGE BODY fxgn_sample_pkg
    AS
      PROCEDURE fxgn_sample_prc(fxgn_sample_table_rec1 OUT fxgn_sample_table_rectype)
        IS
           BEGIN
               SELECT  ename,
                               empno
                   BULK COLLECT
                    INTO fxgn_sample_table_rec1
                  FROM  emp;
      END fxgn_sample_prc;
 END fxgn_sample_pkg ;

Step 2: Calling fxgn_sample_pkg.fxgn_sample_proc.

SET serveroutput ON;

DECLARE
  l_table_rec_type fxgn_sample_pkg.fxgn_sample_table_rectype;
BEGIN
  dbms_output.put_line('Calling fxgn_sample_pkg.fxgn_sample_prc');
  fxgn_sample_pkg.fxgn_sample_prc(l_table_rec_type);
  
  FOR l_rec IN 1..l_table_rec_type.count
  LOOP
    dbms_output.put_line ('Employee Details: ' || l_table_rec_type(l_rec).p_name ||' ['||l_table_rec_type(l_rec).p_emp_id||']' );
  END LOOP;
END;

Output:
That's it.

Comments

Popular posts from this blog

Highlight the cell of Interactive Report based on Search Criteria in Oracle APEX

Querying Data From Flat Files in Oracle

Number of Tables by The Number of Rows in Oracle Database

Save Selected Interactive Grid Records into a Collection - Oracle APEX

Highlight Data That Meet Certain Criteria in Oracle APEX Report

Return a Validation Message using JavaScript if the Oracle Application Express Item is Empty

Remove X (Close Mark) from Oracle APEX Modal Dialog

Display User Rating Icons Dynamically in Oracle APEX Report

Printing Page Numbers in RTF Template [Oracle BI Publisher]

Find Where Specific Table or View is Used in Oracle Database