Oracle培訓課程:PL/SQL屬性數據類型
最新學訊:近期OCP認證正在報名中,因考試人員較多請盡快報名獲取最近考試時間,報名費用請聯系在線老師,甲骨文官方認證,報名從速!
我要咨詢Oracle培訓課程:PL/SQL屬性數據類型,當聲明一個變量的值是數據庫中的一行或者是數據庫中某列時,可以直接使用屬性類型來聲明。Oracle中存在兩種屬性類型:%TYPE和%ROWTYPE。
`ROWTYPE
引用數據庫表中的一行作為數據類型,即RECORD類型(記錄類型),是PL/SQL附加的數據類型。表示一條記錄,就相當于C#中的一個對象。可以使用“.”來訪問記錄中的屬性。
代碼演示:
SQL> DECLARE 2 myemp EMP%ROWTYPE; ① 3 BEGIN 4 SELECT * INTO myemp FROM emp WHERE
empno=7934; ② 5 dbms_output.put_line(myemp.ename); ③ 6 END; 7 / MILLER PL/SQL procedure successfully completed |
代碼解析:
① 聲明一個myemp對象,該對象表示EMP表中的一行。
② 從EMP表中查詢一條記錄放入myemp對象中。
③ 訪問該對象的屬性可以使用“.”。
`%TYPE
引用某個變量或者數據庫的列的類型作為某變量的數據類型。
代碼演示:%TYPE應用
SQL> DECLARE 2 sal emp.sal%TYPE; ① 3
mysal number(4):=3000; 4 totalsal mysal%TYPE; ② 5 BEGIN 6 SELECT SAL INTO sal FROM emp WHERE
empno=7934; 7 totalsal:=sal+mysal; 8 dbms_output.put_line(totalsal); 9
END; 10 / 4300 PL/SQL procedure successfully completed |
代碼解析:
① 定義變量sal為emp表中sal列的類型。
② 定義totalsal是變量mysal的類型。
%TYPE可以引用表中的某列作的類型為變量的數據類型,也可以引用某變量的類型作為新變量的數據類型。