org.opengion.plugin.query

## クラス Query_JDBCTableUpdate

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

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

      public class Query_JDBCTableUpdate
      extends AbstractQuery

       引数引き当て(PreparedStatement) を利用した登録系Queryです。

       java.sql.PreparedStatement を用いて、データベース検索処理を行います。
       引数の指定方法は、DBTableModele のカラム名に対応する名称を、SQL文の[カラム名]形式で
       記述します。これを解析して、実際に実行する PreparedStatement に対応する文字列を
       作成します。
       たとえば、INSERT INTO GEXX (CLM,NAME_JA,LABEL_NAME) VALUES ([CLM],[NAME_JA],[LABEL_NAME] )
       と記述すれば、内部で、DBTableModele のカラム名に対応する値を取り出し、SQL文として、
       INSERT INTO GEXX (CLM,NAME_JA,LABEL_NAME) VALUES (?,?,? ) を実行します。

  形式サンプル:

         ●使用例

            ・QUERYを直接書く場合
            【entry.jsp】
                <og:tableUpdate
                    command   = "{@command}"
                    queryType = "JDBCTableUpdate"
                >
                    INSERT INTO GE41
                        (CLM,NAME_JA,LABEL_NAME,KBSAKU,SYSTEM_ID,LANG,
                         FGJ,DYSET,DYUPD,USRSET,USRUPD,PGUPD)
                    VALUES
                        ([CLM],[NAME_JA],[LABEL_NAME],[KBSAKU],[SYSTEM_ID],[LANG],
                         '1','{@USER.YMDH}','{@USER.YMDH}','{@USER.ID}','{@USER.ID}','{@GUI.KEY}')
                </og:tableUpdate>

  変更履歴:

    4.0.0.0 (2005/01/31) 新規作成

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

- - ### フィールドのサマリー

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

      `ARG_ARRAY, BUFFER_MIDDLE, CR, DB_MAX_QUERY_TIMEOUT, ERR_MSG, ERR_MSG_ARRAY, SYSARG_ARRAY`

  - ### コンストラクタのサマリー

    コンストラクタ
    コンストラクタと説明
    `Query_JDBCTableUpdate()` デフォルトコンストラクター

  - ### メソッドのサマリー

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `void` | `execute(int[] rowNo, DBTableModel table)` 引数配列付のクエリーを実行します。

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

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

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

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

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

    - #### Query_JDBCTableUpdate

          public Query_JDBCTableUpdate()

      デフォルトコンストラクター
      変更履歴:

        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.

  - ### メソッドの詳細

    - #### execute

          public void execute(int[] rowNo,
                              DBTableModel table)

      引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の [カラム名] 部分の引数を、DBTableModelから順番にセットしていきます。
      定義:
        `execute` インタフェース内 `Query`
      オーバーライド:
        `execute` クラス内 `AbstractQuery`
      パラメータ:
        `rowNo` - 選択された行番号配列(登録する対象行)
        `table` - DBTableModelオブジェクト(登録する元データ)
      変更履歴:

        3.8.0.8 (2005/10/03) エラーメッセージの出力順をメッセージ＋Queryに変更します。
        4.0.0.0 (2007/05/09) ParameterMetaData を使用したパラメータ設定追加。
        4.0.0.0 (2007/09/25) isOracle から useParamMetaData に変更
        5.3.8.0 (2011/08/01) useParamMetaData を ConnectionFactory経由で取得。(PostgreSQL対応)、setNull 対応
        5.5.5.4 (2012/08/18) useParamMetaData 処理を、ループの外に出す。(PostgreSQL対応)
        5.5.5.4 (2012/08/18) DATE オブジェクトを登録できるようにする。
        5.5.8.5 (2012/11/27) TIMESTAMP型でも処理できるようにします。
        5.6.9.4 (2013/10/31) エラーメッセージに１行前の情報も出力します。
        6.3.6.1 (2015/08/28) close(),realClose() 廃止。Queryはキャッシュしません。
        6.4.2.1 (2016/02/05) try-with-resources 文で記述。
        6.4.3.4 (2016/03/11) Formatterに新しいコンストラクターを追加する。
        6.4.4.2 (2016/04/01) contains 判定を行う新しいメソッドを使用します。
        6.4.6.0 (2016/05/27) isNumber , isDate 追加。

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