first last next : Table of Varchar2 « PL SQL « Oracle PL / SQL






first last next

     
SQL>
SQL> CREATE TABLE EMP (EMPNO NUMBER(4) NOT NULL,
  2                    ENAME VARCHAR2(10),
  3                    JOB VARCHAR2(9),
  4                    MGR NUMBER(4),
  5                    HIREDATE DATE,
  6                    SAL NUMBER(7, 2),
  7                    COMM NUMBER(7, 2),
  8                    DEPTNO NUMBER(2));

Table created.

SQL>
SQL> INSERT INTO EMP VALUES (7369, 'SMITH', 'CLERK',    7902, TO_DATE('17-DEC-1980', 'DD-MON-YYYY'), 800, NULL, 20);

1 row created.

SQL> INSERT INTO EMP VALUES (7499, 'ALLEN', 'SALESMAN', 7698, TO_DATE('20-FEB-1981', 'DD-MON-YYYY'), 1600, 300, 30);

1 row created.

SQL> INSERT INTO EMP VALUES (7521, 'WARD',  'SALESMAN', 7698, TO_DATE('22-FEB-1981', 'DD-MON-YYYY'), 1250, 500, 30);

1 row created.

SQL> INSERT INTO EMP VALUES (7566, 'JONES', 'MANAGER',  7839, TO_DATE('2-APR-1981',  'DD-MON-YYYY'), 2975, NULL, 20);

1 row created.

SQL> INSERT INTO EMP VALUES (7654, 'MARTIN', 'SALESMAN', 7698,TO_DATE('28-SEP-1981', 'DD-MON-YYYY'), 1250, 1400, 30);

1 row created.

SQL> INSERT INTO EMP VALUES (7698, 'BLAKE', 'MANAGER', 7839,TO_DATE('1-MAY-1981', 'DD-MON-YYYY'), 2850, NULL, 30);

1 row created.

SQL> INSERT INTO EMP VALUES (7782, 'CLARK', 'MANAGER', 7839,TO_DATE('9-JUN-1981', 'DD-MON-YYYY'), 2450, NULL, 10);

1 row created.

SQL> INSERT INTO EMP VALUES (7788, 'SCOTT', 'ANALYST', 7566,TO_DATE('09-DEC-1982', 'DD-MON-YYYY'), 3000, NULL, 20);

1 row created.

SQL> INSERT INTO EMP VALUES (7839, 'KING', 'PRESIDENT', NULL,TO_DATE('17-NOV-1981', 'DD-MON-YYYY'), 5000, NULL, 10);

1 row created.

SQL> INSERT INTO EMP VALUES (7844, 'TURNER', 'SALESMAN', 7698,TO_DATE('8-SEP-1981', 'DD-MON-YYYY'), 1500, 0, 30);

1 row created.

SQL> INSERT INTO EMP VALUES (7876, 'ADAMS', 'CLERK', 7788,TO_DATE('12-JAN-1983', 'DD-MON-YYYY'), 1100, NULL, 20);

1 row created.

SQL> INSERT INTO EMP VALUES (7900, 'JAMES', 'CLERK', 7698,TO_DATE('3-DEC-1981', 'DD-MON-YYYY'), 950, NULL, 30);

1 row created.

SQL> INSERT INTO EMP VALUES (7902, 'FORD', 'ANALYST', 7566,TO_DATE('3-DEC-1981', 'DD-MON-YYYY'), 3000, NULL, 20);

1 row created.

SQL> INSERT INTO EMP VALUES (7934, 'MILLER', 'CLERK', 7782,TO_DATE('23-JAN-1982', 'DD-MON-YYYY'), 1300, NULL, 10);

1 row created.

SQL>
SQL>
SQL>  set serverout on
SQL>
SQL>  declare
  2      type myTextTableType is table of varchar2(200)
  3        index by binary_integer;
  4
  5      myText_table     myTextTableType;
  6      myIndex       number;
  7    begin
  8      for emp_rec in (select * from emp) loop
  9        myText_table(emp_rec.empno) := emp_rec.ename;
 10      end loop;
 11
 12      myIndex := myText_table.first;
 13      loop
 14        exit when myIndex is null;
 15        dbms_output.put_line(myIndex ||':'|| myText_table(myIndex));
 16        myIndex := myText_table.next(myIndex);
 17      end loop;
 18    end;
 19    /
7369:SMITH
7499:ALLEN
7521:WARD
7566:JONES
7654:MARTIN
7698:BLAKE
7782:CLARK
7788:SCOTT
7839:KING
7844:TURNER
7876:ADAMS
7900:JAMES
7902:FORD
7934:MILLER

PL/SQL procedure successfully completed.

SQL>
SQL> drop table emp;

Table dropped.

SQL>
SQL>

   
    
    
    
  








Related examples in the same category

1.Varchar table indexed by BINARY_INTEGER
2.VARRAYs, nested tables, index-by tables
3.Define 'table of varchar2' as data type and insert data
4.Table of varchar2 element count
5.Delete element in table of varchar2
6.Table of varchar2 delete all
7.Insert elements into table of varchar2
8.Clear the table of varchar2
9.A NULL table, and a table with a NULL element.
10.Assign value to table records
11.Reference count property of table record
12.Call delete method with number on table record
13.Call delete method on table record
14.Assign value to table record after delete method call
15.Assing an empty table record to non-empty table record
16.dbms_sql.varchar2_table type
17.Assign to three elements of the table. Note that the key values are not sequential
18.behavior of NULL nested tables.
19.Declare a nested table with null values.
20.index by binary integer or by varchar2
21.Assign value to varchar2 collection by index
22.Assign values to subscripted members of the nested table.
23.Assign the first character index to a variable.
24.Assign the character index to a variable.
25.Allocate space as you increment the index.
26.You cannot traverse an associative array until elements are initialized.
27.Dynamic initialization and assignment in the execution section.