collection methods in pl sql

Опубликовано: 16 Ноябрь 2024
на канале: Subratkumar123
100
1

DECLARE
CURSOR c_cust_cur IS
SELECT ENAME, EMPNO, SAL, DEPTNO FROM EMP; ---smple cursor

TYPE v_cust_cur IS RECORD(
ENAME VARCHAR2(60),
EMPNO VARCHAR2(60),
SAL VARCHAR2(60),
DEPTNO VARCHAR2(60)); ---record type

TYPE cust_cur_tbl IS TABLE OF v_cust_cur INDEX BY BINARY_INTEGER; --PL/SQL - Collections Associative array (or index-by table)
-- or index by binary_integer|pls_integer|VARCHAR2(size);

---declaration of variable
v_cust_cur_tbl cust_cur_tbl;
v_data_clob CLOB := EMPTY_CLOB();
v_from VARCHAR2(100);
v_to VARCHAR2(32700);
BEGIN

OPEN c_cust_cur;
FETCH c_cust_cur BULK COLLECT --Bulk collect
INTO v_cust_cur_tbl;
CLOSE c_cust_cur;

BEGIN

v_cust_cur_tbl.delete(1); --Pl SQl Methods

/* FOR i IN 1 .. v_cust_cur_tbl.COUNT LOOP
or we ca write also output will be same */

FOR i IN v_cust_cur_tbl.first .. v_cust_cur_tbl.last LOOP

/* Retrive data from record */

v_data_clob := v_cust_cur_tbl(i).ENAME || '",' || '"' || v_cust_cur_tbl(i)
.EMPNO || '",' || '"' || v_cust_cur_tbl(i).SAL || '",' || '"' || v_cust_cur_tbl(i)
.DEPTNO;
dbms_output.put_line(v_data_clob);
dbms_output.put_line(v_cust_cur_tbl.first); --Pl SQl Methods
dbms_output.put_line(v_cust_cur_tbl.last);-- Pl SQl Methods
dbms_output.put_line(v_cust_cur_tbl.count);-- Pl SQl Methods
END LOOP;

END;
END;


--Thanks friend we will give code in description box copy and execute ....
enjoy ... try to do execute some methods yourself