org.opengion.plugin.query

## クラス Query_JDBCPrepared

- java.lang.Object
- - org.opengion.hayabusa.db.AbstractQuery
  - - org.opengion.plugin.query.Query_JDBCPrepared

- すべての実装されたインタフェース:
    Query

  推奨されていません。
  4.0.0 (2005/01/31) 廃止。Query_JDBCTableUpdate.java を使用する方向で検討願います。

      @Deprecated
      public class Query_JDBCPrepared
      extends AbstractQuery

  引数引き当て(PreparedStatement) を利用した登録系Queryです。 java.sql.PreparedStatement を用いて、データベース検索処理を行います。 引数に、指定した値を配列で渡します。 内部変数の受け渡しのデフォルト実装は、AbstractQuery クラスを継承している ため,ここでは、execute() メソッドを実装しています。 このクラスでは、ステートメント文を execute() する事により,データベースを 検索した結果を DBTableModel に割り当てます。 ※postgres8.3以降では、数値型の列に対して、実行した場合は、型相違のエラーが発生します。 postgres8.3以降で利用する場合は、postgres側に暗黙の型変換(CAST)の実装を検討して下さい。
  形式サンプル:

         例：
             可変引数付きのＳＱＬ文を実行します。
             これは、INSERT,UPDATE,DELETE など、どのようなSQL文でも実行できます。
             names 属性で指定するのは、DBTableModelのカラム名で、その値が順番に、
             引数(?記号)の個所に設定されます。
             選択されたデータ(行)の数だけ、繰り返し実行されます。

         jsp/TYPE1A/copy.jsp
         <og:value scope="session"
                    key="names"
                    value="CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG" />
         <og:value scope="session" key="SQL" >
             INSERT INTO GEA08
                 (CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG,
                  FGJ,DYSET,DYUPD,USRSET,USRUPD,PGUPD)
             VALUES
                 (?,?,?,?,?,?,
                  '1','{@USER.YMDH}','{@USER.YMDH}','{@USER.ID}','{@USER.ID}','{@GUI.KEY}')
         </og:value>

         jsp/TYPE1A/entry.jsp
         lt;h:update
             command   = "{@command}"
             queryType = "JDBCPrepared"
             names     = "{@names}"  >
         {@SQL}
         </og:update>

         <!-- 前画面で指定のSQL文を削除します。(scope="session"なので削除が必要。) -->
         <og:value scope="session" key="names" command="REMOVE" />
         <og:value scope="session" key="SQL"   command="REMOVE" />

         以下はSELECTで使用する場合の例
         ※値はnamesに指定した値が、?に順番に設定されます。
         (andタグのplaceHolder属性は、valueに指定した式を、実行する or 実行しないの判定に利用されます。)

              SELECT
                  NO,NAME,KBN
              FROM
                  T01

  変更履歴:

    4.0.0.0 (2005/01/31) 廃止する方向です。(Query_JDBCTableUpdate.javaへ)

  機能分類
    データ表示, データ編集
  バージョン
    4.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK5.0,

- - ### フィールドの概要

    - ### クラスから継承されたフィールド org.opengion.hayabusa.db.AbstractQuery

      `ARG_ARRAY, DB_MAX_QUERY_TIMEOUT, ERR_MSG, ERR_MSG_ARRAY, SYSARG_ARRAY`

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタと説明
    `Query_JDBCPrepared()` 推奨されていません。

  - ### メソッドの概要

    メソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `close()` 推奨されていません。 PreparedStatement をクローズします。
    `void` | `execute()` 推奨されていません。 execute()が実行された場合は、execute(null)の処理を行う。
    `void` | `execute(java.lang.String[] args)` 推奨されていません。 引数配列付のクエリーを実行します。

    - ### クラスから継承されたメソッド org.opengion.hayabusa.db.AbstractQuery

      `commit, createTableModel, execute, execute, execute, getConnection, getDBTableModel, getEditConfig, getErrorCode, getErrorMessage, getExecuteCount, getMaxRowCount, getSkipRowCount, getStatement, init, isUpdate, realClose, rollback, setDBTableModel, setEditConfig, setErrorCode, setErrorMessage, setExecuteCount, setMaxRowCount, setResourceManager, setSkipRowCount, setStatement, setTransaction, setUpdateFlag, toString, useParameterMetaData`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### コンストラクタの詳細

    - #### Query_JDBCPrepared

          public Query_JDBCPrepared()

      推奨されていません。

  - ### メソッドの詳細

    - #### execute

          public void execute()

      推奨されていません。
      execute()が実行された場合は、execute(null)の処理を行う。
      定義:
        `execute` インタフェース内 `Query`
      オーバーライド:
        `execute` クラス内 `AbstractQuery`
      変更履歴:

        5.10.2.1 (2018/08/18) 新規追加。

    - #### execute

          public void execute(java.lang.String[] args)

      推奨されていません。
      引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。
      定義:
        `execute` インタフェース内 `Query`
      オーバーライド:
        `execute` クラス内 `AbstractQuery`
      パラメータ:
        `args` - オブジェクトの引数配列
      変更履歴:

        2.1.2.3 (2002/12/02) データベース更新時に、更新フラグをセットするように変更
        2.3.1.3 (2003/01/28) Open Cursor が、大量に残る件の対応。ResultSet を close()
        3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。
        3.3.3.1 (2003/07/18) ＤＢ登録時の後ろスペースを削除する。
        3.5.6.0 (2004/06/18) PreparedStatement をexecute 間で使いまわします。
        3.8.0.8 (2005/10/03) エラーメッセージの出力順をメッセージ＋Queryに変更します。
        5.3.8.0 (2011/08/01) pstmt.setObject で、useParamMetaData の判定を避けるため、pstmt.setString で代用(PostgreSQL対応)

    - #### close

          public void close()

      推奨されていません。
      PreparedStatement をクローズします。
      定義:
        `close` インタフェース内 `Query`
      オーバーライド:
        `close` クラス内 `AbstractQuery`

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