您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關如何理解pl/sql record,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
PL/SQL記錄(record)相當于高級語言中的結構,它有益于處理單行數據。例如要檢索雇員的姓名、工資和補助時,如果使用標量變量接收數據,需要定義三個變量。為了簡化單行多列數據的處理,可以使用記錄。
1、定義Record
在定義時,可以是開發人與自定義記錄類型和記錄變量,也可以使用%rowtype直接定義記錄變量。
例如:自定義Record
DECLARE
TYPE emp_record_type IS RECORD(
name emp.ename%type,
salary emp.sal%type,
dno emp.deptno%type
);
emp_record emp_record_type ;
emp_record是基于記錄類型emp_record_type所定義的記錄變量。記錄變量名:emp_record
2、使用%rowtype屬性定義記錄變量
%rowtype可以基于表或視圖定義記錄變量。當使用該屬性定義記錄變量時,記錄成員的名稱和類型與表或視圖的列的名稱和類型完全相同。
語法:identifier table_name%rowtype;
當使用%rowtype屬性定義記錄變量時,記錄成員的個數、名稱、類型與表或視圖的列的個數、名稱、類型相同。
例如:
emp_record emp%rowtype
記錄變量emp_record的成員名為表emp的列名(empno、ename..)
使用示例:
set serveroutput on
DECLARE
TYPE emp_record IS RECORD(
name emp.ename%type,
salary emp.sal%type,
dno emp.deptno%type
);
emp_record emp_record_type;
BEGIN
select ename,sal,deptno INTO emp_record
FROM emp
WHERE empno=&no;
dbms_output.put_line(emp_record.name);
END;
當引用記錄變量成員時,必須在成員名之前加上記錄變量名作為前綴。
看完上述內容,你們對如何理解pl/sql record有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。