PL/SQL 索引表
索引表也叫做關聯陣列,不過和陣列的區別就是沒有上限,允許連續擴充套件,其作為索引的下標可以BINARYBINARY_INTEGER,PLS_ INTEGER,在Oracle 9i之後,下標可以為Varchar2。還有一點,作為下標的值可以使不連續的,但是不能重複,也就是說新擴充套件的值對應的下標值在之前是不存在的。唯一的缺點是不能作為一列存在於資料庫中使用。
如下所示:
declare
type out_type is table of varchar2(50) index by binary_integer;
v_err out_type;
type type_ename is table of varchar2(50) index by binary_integer;
v_ename type_ename;
begin
for cur in (select empno from emp) loop
select ename,'輸入資訊測試' into v_ename(cur.empno),v_err(cur.empno) from emp where empno=cur.empno;
end loop;
for i in v_ename.first .. v_ename.last loop
dbms_output.put_line(v_ename(i));
end loop;
end;
執行的時候報如下錯誤:
ora-01403:未找到任何資料
ora-06512:在line 12
更改過之後如下:
declare
type out_type is table of varchar2(50) index by binary_integer;
v_err out_type;
type type_ename is table of varchar2(50) index by binary_integer;
v_ename type_ename;
begin
for cur in (select empno from emp) loop
select ename,'輸入資訊測試' into v_ename(cur.empno),v_err(cur.empno) from emp where empno=cur.empno;
dbms_output.put_line(v_ename(cur.empno)||'--'||v_err(cur.empno));
end loop;
end;
執行結果如下:
SMITH--輸入資訊測試
ALLEN--輸入資訊測試
WARD--輸入資訊測試
JONES--輸入資訊測試
MARTIN--輸入資訊測試
BLAKE--輸入資訊測試
CLARK--輸入資訊測試
KING--輸入資訊測試
TURNER--輸入資訊測試
JAMES--輸入資訊測試
FORD--輸入資訊測試
MILLER--輸入資訊測試
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22275400/viewspace-1794864/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PL/SQL 宣告SQL
- Oracle PL/SQLOracleSQL
- pl/sql to_dateSQL
- PL/SQL 運算子SQL
- PL/SQL 條件SQL
- PL/SQL 迴圈SQL
- PL/SQL 遊標SQL
- 使用PL/SQL找到兩個表中的相似值FKSQL
- Oracle PL/SQL塊簡介OracleSQL
- ultraedit高亮顯示pl/sqlSQL
- Oracle 的PL/SQL語言使用OracleSQL
- PL/SQL 條件控制語句SQL
- PL/SQL程式設計急速上手SQL程式設計
- [20240607]PL/SQL中sql語句的註解.txtSQL
- 使用profiler測試Oracle PL/SQL效能OracleSQL
- SQL Server索引 - 非聚集索引SQLServer索引
- Oralce之PL/SQL程式設計(遊標)SQL程式設計
- OCP 複習筆記之PL/SQL (1)筆記SQL
- Oracle PL/SQL程式碼中的註釋OracleSQL
- PL/SQL第二章--基本語法SQL
- PL/SQL第三章--游標SQL
- OCP 複習筆記之PL/SQL (3)筆記SQL
- 6.4. PL/SQL語法——6.4.7. 集合SQL
- pl/sql developer的一個小問題SQLDeveloper
- OCP 複習筆記之PL/SQL (2)筆記SQL
- OCP 複習筆記之PL/SQL (4)筆記SQL
- OCP 複習筆記之PL/SQL (5)筆記SQL
- ORA-06544:PL/SQL:internal error,arguments:[56319]SQLError
- ORACLE PL/SQL 物件、表資料對比功能儲存過程簡單實現OracleSQL物件儲存過程
- 淺談sql索引SQL索引
- Oracl資料庫+PL/SQL安裝與配置資料庫SQL
- PL/SQL Developer連線到Oracle 12cSQLDeveloperOracle
- openGauss關於PL/SQL匿名塊呼叫測試SQL
- 【OracleEBS】 在PL/SQL中呼叫Oracle ERP請求OracleSQL
- 6.4. PL/SQL語法——6.4.6. 遊標SQL
- 如何在PL/SQL中讀寫檔案(轉)SQL
- 「Oracle」客戶端 PL/SQL DEVELOPER 安裝使用Oracle客戶端SQLDeveloper
- 【TUNE_ORACLE】列出LOOP套LOOP的PL/SQL程式碼SQL參考OracleOOPSQL
- PL/SQL 連線 Oralce 提示 Could not initialize oci.dllSQL