pl/sql中的表類似於c語言中的陣列。
1. 定義表型別的語法如下:
type tabletype is table of type index by binary_integer;
type是預定義的標量的型別,或者是通過%type指向標量的型別的引用。乙個簡單的例子:
type t_chartable is table of varchar2(10) index by binary_integer;
2. 引用的語法如下。
tablename(index);
index為binary_integer變數或者是可以轉換成binary_integer變數的表示式。
表應用的乙個實際的例子:
declare
type t_table is table of varchar2(10) index by binary_integer;
mytab t_table;
begin
mytab(1) := 'a';
mytab(2) := 'b';
mytab(3) := 'c';
dbms_output.put_line('first index:'||' '|| mytab(1) ||' ');
end;
3. pl/sql表的特點。
。表大小的限制是由binary_integer型別的取值範圍決定的。
。表中的元素不需要按照特定的次序排列。因為它們不是連續的存在記憶體中,所以可以按任何順序插入。
版本2.3之後,表允許儲存記錄的表。如下面的**:
declare
type t_studenttable is table of students%rowtype index by binary_integer;
v_students t_studenttable;
begin
select * into v_students(1100)
from students
where id=1100;
dbms_output.put_line( v_students(1100).ouusrnm);
end;
然後可以以 table(index).field 來對其內容進行引用。
表還有一些屬性以方便表的使用。如 count、first、last、exists等。
PL SQL學習筆記
from ebs pl sql儲存過程報表輸出 1.fnd file.put line fnd file.log,l err idx 從mes表獲取tool id tool.tool id 出現異常錯誤!2.fnd file.put line fnd file.output,文字輸出內容.獲取物件結...
PL SQL學習筆記
1 啟動sqlplus crtl r sqlplus 啟動sqlplus 輸入使用者名稱密碼登陸oracle 輸出hello world!ps sql set serveroutput on 這句不寫的話不會有結果輸出 sql begin 2 dbms output.put line hello w...
PL SQL學習筆記 5 流程控制語句
語法寫道 if condition then statements elsif condition then statements else statements end if 示例 declare v age number 3 begin select age into v age from us...