The PL/SQL table-based records are essentially a way of representing data in a tabular format. This means that each row corresponds to a record, and each column corresponds to a field within that record. You can think of it as a way of representing data in a spreadsheet-like format.
Table-based records are a powerful way of representing and manipulating data in Oracle PL/SQL. They offer a more structured way of working with data, and can be used to make your code more readable and maintainable.
To create and declare a table record use the PL/SQL %ROWTYPE attribute. Then use a select query to load the declared table-based with records. The syntax for the PL/SQL table-based records is as follows:
Syntax
DECLARE table_record table_name%rowtype; BEGIN SELECT * INTO table_record FROM table_name; DBMS_OUTPUT.PUT_LINE ('Col_1: '||table_record.column1||' Col_2: '||table_record.column2); END;
Example
Phones table
PHONE_ID | PHONE_NAME | PRICE |
---|---|---|
1 | Galaxy Note Edge | 700 |
2 | N910 Galaxy Note 4 | 600 |
3 | Galaxy S5 Duos 4G | 500 |
4 | iPhone 5S | 600 |
5 | iPhone 6 Plus | 900 |
Table-based records
DECLARE rec PHONES%rowtype; BEGIN SELECT * INTO rec FROM PHONES WHERE price = 900; DBMS_OUTPUT.PUT_LINE ('Id: '||rec.PHONE_ID||' Name: '||rec.PHONE_NAME||' Price: '||rec.PRICE); END; /
Output
Id: 5 Name: iPhone 6 Plus Price: 900 |