スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド
Arrayインタフェースでは,繰返し列のアクセス手段として主に次の機能が提供されます。
- SQL Array値の取得
- SQL Array値を格納した結果セットの取得
JDBCドライバは,ArrayインタフェースをPrdbArrayクラスで実装します。
PrdbArrayクラスのオブジェクトは,ResultSetのgetArrayメソッドの返却値として,JDBCドライバが生成します。
Arrayインタフェースのメソッド一覧を次の表に示します。なお,表に記載されていないメソッドはサポートしていません。サポートしていないメソッドを指定すると,SQLExceptionを投入します。
表18-54 Arrayインタフェースのメソッド一覧
(a) getArray()
- 【機能】
- 繰返し列の全要素をObject配列として取得します。
- 【形式】
public Object getArray() throws SQLException
- 【引数】
- なし。
- 【戻り値】
- 繰返し列の全要素
- 【機能詳細】
- 繰返し列の全要素をObject配列として取得します。
- PrdbArrayオブジェクト内に保持している繰返し列の要素をObject配列の形式で返します。返される配列のデータ型は次のとおりです。
HiRDBのデータ型 |
返される配列 |
SMALLINT |
java.lang.Short[] |
INTEGR |
java.lang.Integer[] |
SMALLFLT,REAL |
java.lang.Float[] |
FLOAT,DOUBLE PRECISION |
java.sql.Double[] |
DECIMAL |
java.math.BigDecimal[] |
CHAR,NCHAR,MCHAR |
java.lagn.String[] |
VARCHAR,NVARCHAR,MVARCHAR |
java.lagn.String[] |
DATE |
java.sql.Date[] |
TIME |
java.sql.Time[] |
TIMESTAMP |
java.sql.Timestamp[] |
BINARY,BLOB |
java.io.InputStream[]※ |
- 注※
- HiRDBではBLOB,BINARYの繰返し列は未サポートであり,PrdbArrayオブジェクトを作ることができないため,実際に返されることはありません。
- 【発生する例外】
- 次の場合,SQLExceptionを投入します。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトがcloseされている場合
PrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトをcloseしたことによって,このドライバがPrdbResultSetオブジェクトをcloseした場合を含みます。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトを生成したConnectionオブジェクトがcloseされている場合
- CltResultSet#getXXX()でエラーが発生した場合
(b) getArray(long index, int count)
- 【機能】
- 繰返し列の要素の一部を取り出します。指定されたインデクスから,最大で指定された要素数分Object配列として取得します。
- 【形式】
public Object getArray(long index, int count) throws SQLException
- 【引数】
- long index:
- 最初に取り出す要素のインデクス(最初の要素は1)
- int count:
- 取得する連続する配列要素の数
- 【戻り値】
- 指定されたインデクスからcountで指定された要素数分のObject配列。
- 【機能詳細】
- 繰返し列の要素の一部を取り出します。指定されたインデクスから,最大で指定された要素数分Object配列として取得します。
- 引数indexと引数countに指定された値による返される配列の関係を次に示します。
index |
count |
(index+count) |
返される配列 |
0<index<=要素数 |
0<=count |
(index+count)−1<=要素数 |
長さがcount分の配列 |
(index+count)−1>要素数 |
要素数−(index−1)分の長さを持つ配列 |
count < 0 |
− |
SQLExceptionを投入 |
index>要素数 |
− |
− |
SQLExceptionを投入 |
index<1 |
− |
− |
SQLExceptionを投入 |
- (凡例)
- −:該当しません。
- 【発生する例外】
- 次の場合,SQLExceptionを投入します。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトがcloseされている場合
PrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトをcloseしたことによって,このドライバがPrdbResultSetオブジェクトをcloseした場合を含みます。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトを生成したConnectionオブジェクトがcloseされている場合
- CltResultSet#getXXX()でエラーが発生した場合
- 指定された引数の値が,index<1又はcount<0の場合
- 指定された引数の値が,index>要素数の場合
(c) getBaseType()
- 【機能】
- PrdbArrayオブジェクトが表す繰返し列のJDBCの型を,java.sql.Typesクラスの定数として取得します。
- 【形式】
public int getBaseType() throws SQLException
- 【引数】
- なし。
- 【戻り値】
- PrdbArrayオブジェクトが表す繰返し列のJDBCの型を表す,java.sql.Typesクラスの定数
- 【発生する例外】
- なし。
(d) getBaseTypeName()
- 【機能】
- PrdbArrayオブジェクトが表す繰返し列のデータ型名を取得します。
- 【形式】
public String getBaseTypeName() throws SQLException
- 【引数】
- なし。
- 【戻り値】
- HiRDBのデータ型名
- 【発生する例外】
- なし。
(e) getResultSet()
- 【機能】
- 繰返し列の要素を保持するResultSetオブジェクトを返します。
- 【形式】
public ResultSet getResultSet()
- 【引数】
- なし。
- 【戻り値】
- ResultSetオブジェクト
- 【発生する例外】
- 次の場合,SQLExceptionを投入します。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトがcloseされている場合
PrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトをcloseしたことによって,このドライバがPrdbResultSetオブジェクトをcloseした場合を含みます。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトを生成したConnectionオブジェクトがcloseされている場合
- JDBCドライバでエラーが発生した場合
(f) getResultSet(long index,int count)
- 【機能】
- 繰返し列の要素を保持するResultSetオブジェクトを返します。
- 【形式】
public ResultSet getResultSet(long index,int count) throws SQLException
- 【引数】
- long index:
- 最初に取り出す要素のインデクス(最初の要素は1)
- int count:
- 取得する連続する配列要素の数
- 【戻り値】
- ResultSetオブジェクト。
- 【機能詳細】
- 繰返し列の要素を保持するResultSetオブジェクトを返します。
- ResultSetオブジェクトは,指定されたインデクスで始まり,最大でカウント数分の連続した繰返し列の要素を持ちます。
- 引数indexと引数countに指定された値による返されるResultSetオブジェクトの関係を次に示します。
index |
count |
(index+count) |
返されるResultSet |
0<index<=要素数 |
0<=count |
(index+count)−1<=要素数 |
行数がcount分の結果集合 |
(index−1+count)−1>要素数 |
要素数−(index−1)分の行数を持つ結果集合 |
count<0 |
− |
SQLExceptionを投入 |
index>要素数 |
− |
− |
SQLExceptionを投入 |
index<1 |
− |
− |
SQLExceptionを投入 |
- (凡例)
- −:該当しません。
- 【発生する例外】
- 次の場合,SQLExceptionを投入します。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトがcloseされている場合
PrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトをcloseしたことによって,このドライバがPrdbResultSetオブジェクトをcloseした場合を含みます。
- このPrdbArrayオブジェクトを生成したPrdbResultSetオブジェクトを生成したPrdbStatementオブジェクトを生成したConnectionオブジェクトがcloseされている場合
- 指定された引数の値が,index<1又はcount<0の場合
- 指定された引数の値が,index>要素数の場合
(3) パッケージ名称及びクラス名称
このインタフェースを実装するパッケージ名称とクラス名称を次に示します。
- パッケージ名称:JP.co.Hitachi.soft.HiRDB.JDBC
- クラス名称:PrdbArray
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.