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;
當引用記錄變數成員時,必須在成員名之前加上記錄變數名作為字首。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31444259/viewspace-2139969/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 記錄Record、PL/SQL表和二維陣列SQL陣列
- Erlang中的Record詳解
- Oracle資料庫PL/SQL快捷鍵設定詳解Oracle資料庫SQL
- PL/SQL單行函式和組函式詳解(轉)SQL函式
- ORACLE中RECORD、VARRAY、TABLE的使用詳解Oracle
- ORACLE PL/SQL程式設計詳解之一: PL/SQL 程式設計簡介(千里之行,始於足下)OracleSQL程式設計
- delete duplication record in sql serverdeleteSQLServer
- PL/SQLSQL
- PL/SQL亂碼解決方案(日文)SQL
- SQL&PL/SQL (轉)SQL
- PL/SQL 宣告SQL
- PL/SQL cursorSQL
- PL/SQL打包SQL
- PL/SQL DEVSQLdev
- Oracle PL/SQLOracleSQL
- S19格式檔案詳解(S-record) 分享
- 使用PL/Scope分析PL/SQL程式碼SQL
- PLSQL Language Reference-PL/SQL概覽-PL/SQL架構SQL架構
- [PL/SQL]10g PL/SQL學習筆記(一)SQL筆記
- [PL/SQL]10g PL/SQL學習筆記(二)SQL筆記
- [PL/SQL]10g PL/SQL學習筆記(三)SQL筆記
- PL/SQL 迴圈SQL
- PL/SQL 遊標SQL
- PL/SQL 運算子SQL
- PL/SQL 條件SQL
- pl/sql to_dateSQL
- PL/SQL 基礎SQL
- Oracle PL/SQL INDICESOracleSQL
- PL/SQl Developer使用SQLDeveloper
- pl/sql陣列SQL陣列
- pl/sql練習SQL
- oracle PL/SQL示例OracleSQL
- 淺談pl/sqlSQL
- PL/SQL 索引表SQL索引
- pl/sql 練習SQL
- [pl sql] where current ofSQL
- pl/sql功能特性SQL
- PL/SQL Developer 使用SQLDeveloper