クラス ResultSetValue
- java.lang.Object
-
- org.opengion.fukurou.fileexec.ResultSetValue
-
- すべての実装されたインタフェース:
java.lang.AutoCloseable
public class ResultSetValue extends java.lang.Object implements java.lang.AutoCloseable
ResultSet のデータ処理をまとめたクラスです。 ここでは、ResultSetMetaData から、カラム数、カラム名(NAME列)、 Type属性を取得し、ResultSet で、値を求める時に、Object型の 処理を行います。 Object型としては、CLOB、ROWID、TIMESTAMP 型のみ取り扱っています。 STRUCTタイプもサポートしますが、1レベルのみとします。(6.3.3.0 (2015/07/25))- 変更履歴:
- 7.0.0.0 (2017/07/07) 新規作成
- バージョン
- 7.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK1.8,
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 ResultSetValue(java.sql.ResultSet res)
ResultSet を引数にとるコンストラクタ ここで、カラムサイズ、カラム名、java.sql.Types の定数定義 を取得します。
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 void
close()
try-with-resourcesブロックで、自動的に呼ばれる AutoCloseable の実装。java.lang.String
getClassName(int clmNo)
カラムのタイプを表現する文字列値を返します。int
getColumnCount()
ResultSetMetaData で求めた、カラム数を返します。int
getColumnDisplaySize(int clmNo)
指定のカラム番号のサイズを返します。java.lang.String
getColumnName(int clmNo)
指定のカラム番号のカラム名を返します。java.lang.String[]
getNames()
カラム名配列を返します。java.lang.Number
getNumber(int clmNo)
タイプに応じて変換された、Numberオブジェクトを返します。java.lang.String
getValue(int clmNo)
現在のカーソル位置にあるレコードのカラム番号のデータを取得します。java.lang.String[]
getValues()
現在のカーソル位置にあるレコードの全カラムデータを取得します。boolean
isWritable(int clmNo)
指定の書き込み可能かどうかを返します。boolean
next()
カーソルを現在の位置から順方向に1行移動します。
-
-
-
コンストラクタの詳細
-
ResultSetValue
public ResultSetValue(java.sql.ResultSet res) throws java.sql.SQLException
ResultSet を引数にとるコンストラクタ ここで、カラムサイズ、カラム名、java.sql.Types の定数定義 を取得します。 STRUCTタイプもサポートしますが、1レベルのみとします。 つまり、Object型のカラムに、Object型を定義した場合、ここでは取り出すことができません。 また、Object型は、継承関係を構築できるため、個々のオブジェクトの要素数は異なります。 一番最初のレコードのオブジェクト数を元に、算出しますので、ご注意ください。- パラメータ:
res
- 内部で管理するResultSetオブジェクト- 例外:
java.sql.SQLException
- データベース・アクセス・エラーが発生した場合
-
-
メソッドの詳細
-
getColumnCount
public int getColumnCount()
ResultSetMetaData で求めた、カラム数を返します。- 戻り値:
- カラム数(データの列数)
-
getNames
public java.lang.String[] getNames()
カラム名配列を返します。 配列は、0から始まり、カラム数-1 までの文字型配列に設定されます。 カラム名は、ResultSetMetaData#getColumnLabel(int) を toUpperCase した 大文字が返されます。- 戻り値:
- カラム名配列
- このメソッドは、nullを返しません
-
getColumnName
public java.lang.String getColumnName(int clmNo)
指定のカラム番号のカラム名を返します。 カラム名を取得する、カラム番号は、0から始まり、カラム数-1 までの数字で指定します。 データベース上の、1から始まる番号とは、異なります。 カラム名は、ResultSetMetaData#getColumnLabel(int) を toUpperCase した 大文字が返されます。- パラメータ:
clmNo
- カラム番号 (0から始まり、カラム数-1までの数字)- 戻り値:
- 指定のカラム番号のカラム名
-
getColumnDisplaySize
public int getColumnDisplaySize(int clmNo)
指定のカラム番号のサイズを返します。 カラムのサイズは、ResultSetMetaData#getColumnDisplaySize(int) の値です。- パラメータ:
clmNo
- カラム番号 (0から始まり、カラム数-1までの数字)- 戻り値:
- 指定のカラム番号のサイズ
-
isWritable
public boolean isWritable(int clmNo)
指定の書き込み可能かどうかを返します。 カラムの書き込み可能かどうかは、ResultSetMetaData#isWritable(int) の値です。- パラメータ:
clmNo
- カラム番号 (0から始まり、カラム数-1までの数字)- 戻り値:
- 書き込み可能かどうか
-
next
public boolean next() throws java.sql.SQLException
カーソルを現在の位置から順方向に1行移動します。 ResultSet#next() を呼び出しています。 結果は,すべて文字列に変換されて格納されます。- 戻り値:
- 新しい現在の行が有効である場合はtrue、行がそれ以上存在しない場合はfalse
- 例外:
java.sql.SQLException
- データベース・アクセス・エラーが発生した場合、またはこのメソッドがクローズされた結果セットで呼び出された場合- 関連項目:
ResultSet.next()
-
getValue
public java.lang.String getValue(int clmNo) throws java.sql.SQLException
現在のカーソル位置にあるレコードのカラム番号のデータを取得します。 ResultSet#getObject( clmNo+1 ) を呼び出しています。 引数のカラム番号は、0から始まりますが、ResultSet のカラム順は、1から始まります。 指定は、0から始まるカラム番号です。 結果は,すべて文字列に変換されて返されます。 また、null オブジェクトの場合も、ゼロ文字列に変換されて返されます。- パラメータ:
clmNo
- カラム番号 (0から始まり、カラム数-1までの数字)- 戻り値:
- 現在行のカラム番号のデータ(文字列)
- 例外:
java.sql.SQLException
- データベース・アクセス・エラーが発生した場合- このメソッドは、nullを返しません
-
getValues
public java.lang.String[] getValues() throws java.sql.SQLException
現在のカーソル位置にあるレコードの全カラムデータを取得します。 個々のカラムの値も、null を含みません。(ゼロ文字列になっています) #getValue( clmNo ) を、0から、カラム数-1 まで呼び出して求めた文字列配列を返します。- 戻り値:
- 現在行の全カラムデータの文字列配列
- 例外:
java.sql.SQLException
- データベース・アクセス・エラーが発生した場合- このメソッドは、nullを返しません
-
getNumber
public java.lang.Number getNumber(int clmNo) throws java.sql.SQLException
タイプに応じて変換された、Numberオブジェクトを返します。 条件に当てはまらない場合は、null を返します。 org.opengion.hayabusa.io.HybsJDBCCategoryDataset2 から移動してきました。 これは、検索結果をグラフ化する為の 値を取得する為のメソッドですので、 数値に変換できない場合は、エラーになります。- パラメータ:
clmNo
- カラム番号 (0から始まり、カラム数-1までの数字)- 戻り値:
- Numberオブジェクト(条件に当てはまらない場合は、null)
- 例外:
java.sql.SQLException
- データベース・アクセス・エラーが発生した場合java.lang.RuntimeException
- 数字変換できなかった場合。- 関連項目:
Types
-
getClassName
public java.lang.String getClassName(int clmNo)
カラムのタイプを表現する文字列値を返します。 この文字列を用いて、CCSファイルでタイプごとの表示方法を 指定することができます。 現時点では、VARCHAR2,LONG,NUMBER,DATE,CLOB,NONE のどれかにあてはめます。- パラメータ:
clmNo
- カラム番号 (0から始まり、カラム数-1までの数字)- 戻り値:
- カラムのタイプを表現する文字列値
- 関連項目:
Types
- このメソッドは、nullを返しません
-
close
public void close()
try-with-resourcesブロックで、自動的に呼ばれる AutoCloseable の実装。 コンストラクタで渡された ResultSet を close() します。- 定義:
close
インタフェース内java.lang.AutoCloseable
- 関連項目:
AutoCloseable.close()
- 変更履歴:
- 6.4.2.1 (2016/02/05) 新規作成。try-with-resourcesブロックで、自動的に呼ばれる AutoCloseable の実装。
-
-