溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何理解pl/sql record

發(fā)布時(shí)間:2021-11-03 16:41:01 來(lái)源:億速云 閱讀:116 作者:柒染 欄目:建站服務(wù)器

今天就跟大家聊聊有關(guān)如何理解pl/sql record,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

PL/SQL記錄(record)相當(dāng)于高級(jí)語(yǔ)言中的結(jié)構(gòu),它有益于處理單行數(shù)據(jù)。例如要檢索雇員的姓名、工資和補(bǔ)助時(shí),如果使用標(biāo)量變量接收數(shù)據(jù),需要定義三個(gè)變量。為了簡(jiǎn)化單行多列數(shù)據(jù)的處理,可以使用記錄。

1、定義Record

在定義時(shí),可以是開(kāi)發(fā)人與自定義記錄類(lèi)型和記錄變量,也可以使用%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是基于記錄類(lèi)型emp_record_type所定義的記錄變量。記錄變量名:emp_record

2、使用%rowtype屬性定義記錄變量

%rowtype可以基于表或視圖定義記錄變量。當(dāng)使用該屬性定義記錄變量時(shí),記錄成員的名稱(chēng)和類(lèi)型與表或視圖的列的名稱(chēng)和類(lèi)型完全相同。

語(yǔ)法:identifier table_name%rowtype;

當(dāng)使用%rowtype屬性定義記錄變量時(shí),記錄成員的個(gè)數(shù)、名稱(chēng)、類(lèi)型與表或視圖的列的個(gè)數(shù)、名稱(chēng)、類(lèi)型相同。

例如:

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;

當(dāng)引用記錄變量成員時(shí),必須在成員名之前加上記錄變量名作為前綴。

看完上述內(nèi)容,你們對(duì)如何理解pl/sql record有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI