Record type
SQL> create table emp(
2 emp_id integer primary key
3 ,lastname varchar2(20) not null
4 ,firstname varchar2(15) not null
5 ,midinit varchar2(1)
6 ,street varchar2(30)
7 ,city varchar2(20)
8 ,state varchar2(2)
9 ,zip varchar2(5)
10 ,shortZipCode varchar2(4)
11 ,area_code varchar2(3)
12 ,phone varchar2(8)
13 ,company_name varchar2(50));
Table created.
SQL>
SQL>
SQL> insert into emp(emp_id,lastname,firstname,midinit,street,city,state,zip,shortZipCode,area_code,phone,company_name)values
2 (1,'Jones','Joe','J','1 Ave','New York','NY','11202','1111','212', '221-4333','Big Company');
1 row created.
SQL> insert into emp(emp_id,lastname,firstname,midinit,street,city,state,zip,shortZipCode,area_code,phone,company_name)values
2 (2,'Smith','Sue','J','1 Street','New York','NY','11444','1111','212', '436-6773','Little Company');
1 row created.
SQL> insert into emp(emp_id,lastname,firstname,midinit,street,city,state,zip,shortZipCode,area_code,phone,company_name)values
2 (3,'X','Peggy','J','1 Drive','New York','NY','45502','2222','212', '234-4444','Medium Company');
1 row created.
SQL>
SQL> DECLARE
2 Type rec_t is RECORD (emp_id number,lastname varchar2(25),firstname varchar2(25) );
3 Type tab_t is table of rec_t;
4 tab tab_t;
5 BEGIN
6 UPDATE emp
7 SET area_code = '917'
8 WHERE area_code = '212'
9 RETURNING emp_id, lastname, firstname
10 BULK COLLECT INTO tab;
11 dbms_output.put_line(tab(1).lastname );
12 END;
13 /
Jones
PL/SQL procedure successfully completed.
SQL>
SQL> drop table emp;
Table dropped.
Related examples in the same category