從PL/SQL儲存函式返回陣列
完成此方法指南後,您應該能夠:
-
在 Oracle 資料庫中建立 VARRAY
-
使用 oracle.sql.ARRAY 類
-
從 Java 訪問 VARRAY
簡介
本文件演示如何從 PL/SQL 函式返回陣列並從 java 應用程式訪問它。陣列是一組有序的資料元素。 VARRAY 是大小可變的陣列。它具有資料元素的排列集,並且所有元素屬於同一資料型別。每個元素都具有索引,它是與元素在 VARRAY 中的位置相對應的一個數字。 VARRAY 中元素的數量是 VARRAY 的“大小”。在宣告 VARRAY 型別時,必須指定其最大值。
在此方法指南中,PL/SQL 儲存函式從 SCOTT 模式的 EMP 表中取出所有僱員的姓名,以這些姓名建立一個陣列並將其返回。從 Java 應用程式呼叫此 PL/SQL 儲存函式,向使用者顯示僱員的姓名。
軟體需求
-
Oracle9i Database version 9.0.1 或更新版本。您可從 Oracle 技術網下載 Oracle9i 資料庫。
-
JDK1.2.x 或更高版本。可從此處下載。
-
Oracle9i JDBC 驅動程式。JDBC 驅動程式可從 ORACLE_HOME/jdbc/lib 處獲得。也可從此處下載。
在資料庫中建立一個 SQLVARRAY 型別,在本例中,它是 VARCHAR2 型別。 作為 scott/tiger 使用者連線到資料庫,並在 SQL 提示符處執行以下命令。
SQL>CREATE OR REPLACE TYPE EMPARRAY is VARRAY(20) OF VARCHAR2(30)
SQL>/
然後建立下面的函式,它返回一個 VARRAY。
|
在資料庫中建立函式後,可以從 java 應用程式呼叫它並在應用程式中獲得陣列資料。下面給出程式碼段,從 Java 應用程式執行 PL/SQL 儲存函式。單擊此處檢視完整的應用程式原始碼。
|
在上面的程式碼段中,可以看到 OracleCallableSatatement 用於呼叫 PL/SQL 儲存函式。在執行 PL/SQL 儲存函式前,將返回的資料型別註冊為 OracleTypes.ARRAY,並且指定在資料庫中定義的型別名稱 (EMPARRAY)。然後執行 PL/SQL 儲存函式並獲得 oracle.sql.ARRAY 形式的返回值。 oracle.sql.ARRAY 類擁有的方法可以獲得關於陣列的詳細資訊,如陣列型別、陣列長度等。使用 oracle.sql.ARRAY 的 getArray() 方法獲得陣列的內容並將內容列印出來。
總結
本文件說明了如何建立 VARRAY 並從 PL/SQL 儲存函式返回陣列,以及如何從 java 應用程式訪問它
參考:http://www.oracle.com/technology/global/cn/sample_code/tech/java/codesnippet/jdbc/varray/index.html
相關文章
- SQL---------儲存函式SQL儲存函式
- SQL server儲存過程函式SQLServer儲存過程函式
- 陣列排序函式-php陣列函式(一)陣列排序函式PHP
- 使用儲存過程(PL/SQL)向資料庫中儲存BLOB物件儲存過程SQL資料庫物件
- PL/SQL中動態掉用儲存過程SQL儲存過程
- sql server資料庫如何儲存陣列,int[]float[]double[]陣列儲存到資料庫方法SQLServer資料庫陣列
- onethink中 list_to_tree 函式 是如何返回陣列的函式陣列
- Solidity中函式返回值,靜態動態陣列Solid函式陣列
- 儲存過程與儲存函式儲存過程儲存函式
- MySQL中陣列的儲存MySql陣列
- 佇列-鏈式儲存佇列
- 陣列展平函式陣列函式
- PHP 陣列函式妙用PHP陣列函式
- 巧用 PHP 陣列函式PHP陣列函式
- 陣列處理函式陣列函式
- PHP 陣列常用函式PHP陣列函式
- 陣列二:使用陣列可變函式為陣列排序陣列函式排序
- MySQL 儲存函式及呼叫MySql儲存函式
- 小程式 - 陣列追加兼本地儲存陣列
- 鏈式儲存的佇列佇列
- shell--函式與陣列函式陣列
- PHP陣列函式彙總PHP陣列函式
- php陣列函式小結PHP陣列函式
- 陣列常用函式彙總陣列函式
- mysql和orcale的儲存過程和儲存函式MySql儲存過程儲存函式
- MySQL儲存過程 (即函式)MySql儲存過程函式
- mySql 儲存過程與函式MySql儲存過程函式
- MySQL 儲存過程和函式MySql儲存過程函式
- MySQL儲存過程和函式MySql儲存過程函式
- arrilist陣列和collections儲存學生排序陣列排序
- 日常學習儲存--陣列和指標陣列指標
- 如何儲存陣列配置到 PHP 檔案陣列PHP
- PHP陣列函式-array_mapPHP陣列函式
- PHP:常用PHP陣列操作函式PHP陣列函式
- MySQL入門--儲存過程(PROCEDURE)和儲存函式(FUNCTION)MySql儲存過程儲存函式Function
- MySQL入門系列:儲存程式(二)之儲存函式簡介MySql儲存函式
- Python將np陣列儲存成npy檔案Python陣列
- openGauss 函式及儲存過程支援函式儲存過程
- 儲存過程vs.函式QM儲存過程函式