概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.7.1.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.db
クラス DBUtil

    java.lang.Object
      org.opengion.fukurou.db.DBUtil

    public final class DBUtil

extends java.lang.Object

データベース関連の便利なメソッドを集めた簡易ユーティリティークラスです。 全てのメソッドは、static メソッドになっています。

変更履歴:

  2.1.1.1 (2002/11/15) Serializable インターフェースを削除する。
  4.0.0.0 (2007/10/16) DBアクセス関係のメソッドのみをパッケージ移動(hayabusa/db > fukurou/db)

機能分類
  ＤＢ/Shell制御
バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

メソッドの概要
`static java.lang.String[]` | `dbCallExecute(java.lang.String stmt, java.lang.String[] args, ApplicationInfo appInfo)` 初期データベースに接続して、CallableStatement(PL/SQL)を実行します(互換性確保のため残しています)。
`static java.lang.String[]` | `dbCallExecute(java.lang.String stmt, java.lang.String[] args, ApplicationInfo appInfo, java.lang.String dbid)` 検索するデータベースを指定して、CallableStatement(PL/SQL)を実行します(互換性確保のため残しています)。
`static java.lang.String[]` | `dbCallExecute(java.lang.String stmt, java.lang.String[] args, Transaction tran)` 初期データベースに接続して、CallableStatement(PL/SQL)を実行します(Transaction 対応)。
`static java.lang.String[]` | `dbCallExecute(java.lang.String stmt, java.lang.String[] args, Transaction tran, java.lang.String dbid)` 検索するデータベースを指定して、CallableStatement(PL/SQL)を実行します(Transaction 対応)。
`static java.lang.String[][]` | `dbExecute(java.lang.String stmt, java.lang.String[] args, ApplicationInfo appInfo)` 初期データベースに接続して、Queryを実行します(互換性確保のため残しています)。
`static java.lang.String[][]` | `dbExecute(java.lang.String stmt, java.lang.String[] args, ApplicationInfo appInfo, java.lang.String dbid)` 検索するデータベースを指定して、Queryを実行します(互換性確保のため残しています)。
`static java.lang.String[][]` | `dbExecute(java.lang.String stmt, java.lang.String[] args, ApplicationInfo appInfo, java.lang.String dbid, boolean useHeader)` 検索するデータベースを指定して、Queryを実行します(互換性確保のため残しています)。
`static java.lang.String[][]` | `dbExecute(java.lang.String stmt, java.lang.String[] args, Transaction tran)` 初期データベースに接続して、Queryを実行します(Transaction 対応)。
`static java.lang.String[][]` | `dbExecute(java.lang.String stmt, java.lang.String[] args, Transaction tran, java.lang.String dbid)` 検索するデータベースを指定して、Queryを実行します(Transaction 対応)。
`static java.lang.String[][]` | `dbExecute(java.lang.String stmt, java.lang.String[] args, Transaction tran, java.lang.String dbid, boolean useHeader)` 検索するデータベースを指定して、Queryを実行します(Transaction 対応)。
`static int` | `dbExist(java.lang.String stmt, java.lang.String[] args, ApplicationInfo appInfo, java.lang.String dbid)` SQL文の実行結果において、データの件数を取得します(互換性確保のため残しています)。
`static int` | `dbExist(java.lang.String stmt, java.lang.String[] args, Transaction tran, java.lang.String dbid)` SQL文の実行結果において、データの件数を取得します(Transaction 対応)。
`static java.lang.String` | `getProductName(java.sql.Connection conn)` コネクションオブジェクトからデータベースのProductNameを取り出します。
`static java.lang.String` | `getValue(java.sql.ResultSet res, int col, int type)` 検索結果オブジェクトから値を取り出します。
`static java.lang.String[][]` | `resultToArray(java.sql.ResultSet resultSet, boolean useHeader)` ResultSet より、結果の文字列配列を作成します。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

メソッドの詳細

### dbExecute

    public static java.lang.String[][] dbExecute(java.lang.String stmt,
                                                 java.lang.String[] args,
                                                 ApplicationInfo appInfo)

  初期データベースに接続して、Queryを実行します(互換性確保のため残しています)。 ステートメントと引数により、Prepared クエリーの検索のみ実行します。 結果は,すべて文字列に変換されて格納されます。 検索するデータベースは、DEFAULT です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `appInfo` - アプリ情報オブジェクト
  戻り値:
    検索結果の配列
  変更履歴:

    3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定
    4.0.0.0 (2007/10/10) dbid の初期値を、"DEFAULT" から null に変更
    5.1.9.0 (2010/08/01) Transaction 対応します。
    5.3.7.0 (2011/07/01) TransactionReal の引数変更
    5.3.8.0 (2011/08/01) TransactionReal と close() 処理をセットで実行する。

### dbExecute

    public static java.lang.String[][] dbExecute(java.lang.String stmt,
                                                 java.lang.String[] args,
                                                 Transaction tran)

  初期データベースに接続して、Queryを実行します(Transaction 対応)。 ステートメントと引数により、Prepared クエリーの検索のみ実行します。 結果は,すべて文字列に変換されて格納されます。 ここでは、Transactionオブジェクトから、Connection を取り出して使用します。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `tran` - Transactionオブジェクト
  戻り値:
    検索結果の配列
  変更履歴:

    5.1.9.0 (2010/08/01) 新規作成 Transaction 対応

### dbExecute

    public static java.lang.String[][] dbExecute(java.lang.String stmt,
                                                 java.lang.String[] args,
                                                 ApplicationInfo appInfo,
                                                 java.lang.String dbid)

  検索するデータベースを指定して、Queryを実行します(互換性確保のため残しています)。 ステートメントと引数により、Prepared クエリーの検索のみ実行します。 結果は,すべて文字列に変換されて格納されます。 追加：検索以外のSQLも実行できます。結果は、null を返します。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `appInfo` - アプリ情報オブジェクト
    `dbid` - 接続先ID
  戻り値:
    検索結果の配列
  変更履歴:

    3.0.0.0 (2002/12/25) 検索のみのクエリーから、何でもありのクエリーに変更
    2.3.1.3 (2003/01/28) Open Cursor が、大量に残る件の対応。ResultSet を close()
    3.8.0.8 (2005/10/03) エラーメッセージの出力順をメッセージ＋Queryに変更します。
    3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定
    4.0.0.1 (2007/12/03) try ～ catch ～ finally をきちんと行う。
    5.1.9.0 (2010/08/01) Transaction 対応します。
    5.3.7.0 (2011/07/01) TransactionReal の引数変更
    5.3.8.0 (2011/08/01) TransactionReal と close() 処理をセットで実行する。

### dbExecute

    public static java.lang.String[][] dbExecute(java.lang.String stmt,
                                                 java.lang.String[] args,
                                                 Transaction tran,
                                                 java.lang.String dbid)

  検索するデータベースを指定して、Queryを実行します(Transaction 対応)。 ステートメントと引数により、Prepared クエリーの検索のみ実行します。 結果は,すべて文字列に変換されて格納されます。 追加：検索以外のSQLも実行できます。結果は、null を返します。 ここでは、Transactionオブジェクトから、Connection を取り出して使用します。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `tran` - Transactionオブジェクト
    `dbid` - 接続先ID
  戻り値:
    検索結果の配列
  変更履歴:

    5.1.9.0 (2010/08/01) 新規作成 Transaction 対応

### dbExecute

    public static java.lang.String[][] dbExecute(java.lang.String stmt,
                                                 java.lang.String[] args,
                                                 ApplicationInfo appInfo,
                                                 java.lang.String dbid,
                                                 boolean useHeader)

  検索するデータベースを指定して、Queryを実行します(互換性確保のため残しています)。 ステートメントと引数により、Prepared クエリーの検索のみ実行します。 結果は,すべて文字列に変換されて格納されます。 追加：検索以外のSQLも実行できます。結果は、null を返します。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `appInfo` - アプリ情報オブジェクト
    `dbid` - 接続先ID
    `useHeader` - 1行目にヘッダーを含めるか
  戻り値:
    検索結果の配列
  変更履歴:

    4.3.7.0 (2009/06/01) 新規作成
    5.1.2.0 (2010/01/01) setObject に ParameterMetaData の getParameterType を渡す。(PostgreSQL対応)
    5.1.9.0 (2010/08/01) Transaction 対応します。
    5.3.7.0 (2011/07/01) TransactionReal の引数変更
    5.3.8.0 (2011/08/01) TransactionReal と close() 処理をセットで実行する。

### dbExecute

    public static java.lang.String[][] dbExecute(java.lang.String stmt,
                                                 java.lang.String[] args,
                                                 Transaction tran,
                                                 java.lang.String dbid,
                                                 boolean useHeader)

  検索するデータベースを指定して、Queryを実行します(Transaction 対応)。 ステートメントと引数により、Prepared クエリーの検索のみ実行します。 結果は,すべて文字列に変換されて格納されます。 追加：検索以外のSQLも実行できます。結果は、null を返します。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `tran` - Transactionオブジェクト
    `dbid` - 接続先ID
    `useHeader` - 1行目にヘッダーを含めるか
  戻り値:
    検索結果の配列
  変更履歴:

    5.1.9.0 (2010/08/01) 新規作成 Transaction 対応
    5.3.8.0 (2011/08/01) Transaction を引数で受け取った場合は、close() しない。
    5.3.8.0 (2011/08/01) useParamMetaData を ConnectionFactory経由で取得。(PostgreSQL対応)、setNull 対応

### dbCallExecute

    public static java.lang.String[] dbCallExecute(java.lang.String stmt,
                                                   java.lang.String[] args,
                                                   ApplicationInfo appInfo)

  初期データベースに接続して、CallableStatement(PL/SQL)を実行します(互換性確保のため残しています)。 ステートメントと引数により、CallableStatement クエリーを実行します。 結果は,ステータスとエラーメッセージを返します。便宜的に、String配列に 設定して返します。 ステートメント文字列には、 { call PLSQL( ?,?,?･･･ ) } となります。 第一引数、第二引数は、OUT属性で、結果(STATUS)とエラー時の内容(ERR_CODE)を返します。 第三引数以降の ? には、オブジェクトの引数配列 が順に割り当てられます。 検索するデータベースは、DEFAULT です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `appInfo` - アプリ情報オブジェクト
  戻り値:
    実行結果([0]=ステータス、[1]=エラーメッセージ
  変更履歴:

    3.8.0.0 (2005/06/07) 新規追加
    3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定
    4.0.0.0 (2007/10/10) dbid の初期値を、"DEFAULT" から null に変更
    5.1.9.0 (2010/08/01) Transaction 対応します。
    5.3.7.0 (2011/07/01) TransactionReal の引数変更
    5.3.8.0 (2011/08/01) TransactionReal と close() 処理をセットで実行する。

### dbCallExecute

    public static java.lang.String[] dbCallExecute(java.lang.String stmt,
                                                   java.lang.String[] args,
                                                   Transaction tran)

  初期データベースに接続して、CallableStatement(PL/SQL)を実行します(Transaction 対応)。 ステートメントと引数により、CallableStatement クエリーを実行します。 結果は,ステータスとエラーメッセージを返します。便宜的に、String配列に 設定して返します。 ステートメント文字列には、 { call PLSQL( ?,?,?･･･ ) } となります。 第一引数、第二引数は、OUT属性で、結果(STATUS)とエラー時の内容(ERR_CODE)を返します。 第三引数以降の ? には、オブジェクトの引数配列 が順に割り当てられます。 検索するデータベースは、DEFAULT です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `tran` - Transactionオブジェクト
  戻り値:
    実行結果([0]=ステータス、[1]=エラーメッセージ
  変更履歴:

    5.1.9.0 (2010/08/01) 新規作成 Transaction 対応

### dbCallExecute

    public static java.lang.String[] dbCallExecute(java.lang.String stmt,
                                                   java.lang.String[] args,
                                                   ApplicationInfo appInfo,
                                                   java.lang.String dbid)

  検索するデータベースを指定して、CallableStatement(PL/SQL)を実行します(互換性確保のため残しています)。 ステートメントと引数により、CallableStatement クエリーを実行します。 結果は,ステータスとエラーメッセージを返します。便宜的に、String配列に 設定して返します。 ステートメント文字列には、 { call PLSQL( ?,?,?･･･ ) } となります。 第一引数、第二引数は、OUT属性で、結果(STATUS)とエラー時の内容(ERR_CODE)を返します。 第三引数以降の ? には、オブジェクトの引数配列 が順に割り当てられます。 検索するデータベースは、DEFAULT です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `appInfo` - アプリ情報オブジェクト
    `dbid` - 接続先ID
  戻り値:
    実行結果([0]=ステータス、[1]=エラーメッセージ
  変更履歴:

    3.8.0.0 (2005/06/07) 新規追加
    3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定
    4.0.0.1 (2007/12/03) try ～ catch ～ finally をきちんと行う。
    5.1.9.0 (2010/08/01) Transaction 対応します。
    5.3.7.0 (2011/07/01) TransactionReal の引数変更
    5.3.8.0 (2011/08/01) TransactionReal と close() 処理をセットで実行する。

### dbCallExecute

    public static java.lang.String[] dbCallExecute(java.lang.String stmt,
                                                   java.lang.String[] args,
                                                   Transaction tran,
                                                   java.lang.String dbid)

  検索するデータベースを指定して、CallableStatement(PL/SQL)を実行します(Transaction 対応)。 ステートメントと引数により、CallableStatement クエリーを実行します。 結果は,ステータスとエラーメッセージを返します。便宜的に、String配列に 設定して返します。 ステートメント文字列には、 { call PLSQL( ?,?,?･･･ ) } となります。 第一引数、第二引数は、OUT属性で、結果(STATUS)とエラー時の内容(ERR_CODE)を返します。 第三引数以降の ? には、オブジェクトの引数配列 が順に割り当てられます。 検索するデータベースは、DEFAULT です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `tran` - Transactionオブジェクト
    `dbid` - 接続先ID
  戻り値:
    実行結果([0]=ステータス、[1]=エラーメッセージ
  変更履歴:

    5.1.9.0 (2010/08/01) 新規作成 Transaction 対応
    5.3.8.0 (2011/08/01) Transaction を引数で受け取った場合は、close() しない。

### dbExist

    public static int dbExist(java.lang.String stmt,
                              java.lang.String[] args,
                              ApplicationInfo appInfo,
                              java.lang.String dbid)

  SQL文の実行結果において、データの件数を取得します(互換性確保のため残しています)。 ステートメントと引数により、Prepared クエリーの検索を実行します。 結果は、件数を数値で返します。 あくまで、存在チェックに必要な処理のみ行っているため、通常の検索より高速です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `appInfo` - アプリ情報オブジェクト
    `dbid` - 接続先ID
  戻り値:
    検索結果(データの件数)
  変更履歴:

    3.5.0.0 (2003/09/17) 新規作成
    3.8.0.8 (2005/10/03) エラーメッセージの出力順をメッセージ＋Queryに変更します。
    3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定
    4.0.0.1 (2007/12/03) try ～ catch ～ finally をきちんと行う。
    5.1.2.0 (2010/01/01) setObject に ParameterMetaData の getParameterType を渡す。(PostgreSQL対応)
    5.1.9.0 (2010/08/01) Transaction 対応します。
    5.3.7.0 (2011/07/01) TransactionReal の引数変更
    5.3.8.0 (2011/08/01) TransactionReal と close() 処理をセットで実行する。

### dbExist

    public static int dbExist(java.lang.String stmt,
                              java.lang.String[] args,
                              Transaction tran,
                              java.lang.String dbid)

  SQL文の実行結果において、データの件数を取得します(Transaction 対応)。 ステートメントと引数により、Prepared クエリーの検索を実行します。 結果は、件数を数値で返します。 あくまで、存在チェックに必要な処理のみ行っているため、通常の検索より高速です。

  パラメータ:
    `stmt` - ステートメント文字列
    `args` - オブジェクトの引数配列
    `tran` - Transactionオブジェクト
    `dbid` - 接続先ID
  戻り値:
    検索結果(データの件数)
  変更履歴:

    5.1.9.0 (2010/08/01) 新規作成 Transaction 対応
    5.3.8.0 (2011/08/01) Transaction を引数で受け取った場合は、close() しない。
    5.3.8.0 (2011/08/01) useParamMetaData を ConnectionFactory経由で取得。(PostgreSQL対応)、setNull 対応

### resultToArray

    public static java.lang.String[][] resultToArray(java.sql.ResultSet resultSet,
                                                     boolean useHeader)

  ResultSet より、結果の文字列配列を作成します。 結果は,すべて文字列に変換されて格納されます。 移動したメソッドで使われているのでこれも移動

  パラメータ:
    `resultSet` - ResultSetオブジェクト
    `useHeader` - true:ヘッダーを第一行に含める/false:含めない
  戻り値:
    ResultSetの検索結果配列
  変更履歴:

    3.1.0.0 (2003/03/20) Vector を使用している箇所で、非同期でも構わない箇所を、ArrayList に置換え。
    3.8.0.8 (2005/10/03) エラーメッセージの出力順をメッセージ＋Queryに変更します。
    4.0.0.0 (2005/01/31) private ⇒ public , ヘッダー情報の取得有無フラグの追加
    5.6.7.0 (2013/07/27) CLOB 対応

### getValue

    public static java.lang.String getValue(java.sql.ResultSet res,
                                            int col,
                                            int type)
                                     throws java.sql.SQLException

  検索結果オブジェクトから値を取り出します。

  パラメータ:
    `res` - 検索結果オブジェクト
    `col` - カラム(0から始まる値。このメソッドの内部で、＋１しています)
    `type` - データタイプ(java.sql.Types.XXXX)
  戻り値:
    値
  例外:
    `java.sql.SQLException`
  変更履歴:

    5.3.6.0 (2011/06/01) 集計機能対応によりメソッド化
    5.5.5.4 (2012/08/18) if文をcase文に置き換え。
    5.5.5.4 (2012/08/18) TIMESTAMP の処理を追加。
    5.5.7.2 (2012/10/09) HybsDateUtil を利用するように修正します。

### getProductName

    public static java.lang.String getProductName(java.sql.Connection conn)

  コネクションオブジェクトからデータベースのProductNameを取り出します。 ProductName は、小文字化して返します。 また、処理エラーが発生した場合は、"none" を返します。 ここでは、SQLException は、発生させません。

  パラメータ:
    `conn` - コネクションオブジェクト
  戻り値:
    データベースのProductName
  変更履歴:

    5.6.7.0 (2013/07/27) 新規追加
    5.6.7.4 (2013/08/30) ProductNameの小文字化対応

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.7.1.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.