クラス Query_JDBCPLSQL
java.lang.Object
org.opengion.hayabusa.db.AbstractQuery
org.opengion.plugin.query.Query_JDBCPLSQL
- すべての実装されたインタフェース:
Query
PL/SQL をコールする 登録系 Queryクラスです。
java.sql.CallableStatement を用いて、データベース検索処理を行います。
引数に、SYSARG_ARRAYと、ユーザーARG_ARRAY を配列指定で渡すことが出来、
エラー時には、DBErrMsg オブジェクトにエラー情報を格納して返すことが可能です。
内部変数の受け渡しのデフォルト実装は、AbstractQuery クラスを継承している
ため、ここでは、execute() メソッドを実装しています。
このクラスでは、ステートメント文を execute() する事により、データベースを
検索した結果を DBTableModel に割り当てます。
- 変更履歴:
- 8.5.6.1 (2024/03/29) Oracle関係のPL/SQLなどを処理する execute(ExceptionBiConsumer) を使用します。
- 機能分類
- データ表示, データ編集
- 形式サンプル:
- 例:jsp/TYPE1B/result.jsp names には、GEA08ARG で定義したカラムを指定します。 呼び出す PL/SQL では、登録系PL/SQL です。 <og:plsqlUpdate command = "{@command}" names = "SYSTEM_ID,LANG,CLM,NAME_JA,LABEL_NAME,KBSAKU,FGJ,USRSET" dbType = "GEA08ARG" queryType = "JDBCPLSQL" > { call TYPE1B01.TYPE1B01( ?,?,?,?,? ) } </og:plsqlUpdate> PROCEDURE TYPE1B01 ( P_KEKKA OUT NUMBER, -- エラー結果(0:正常 1:警告 2:異常) P_ERRMSGS OUT ERR_MSG_ARRAY, -- エラーのあるときのエラーメッセージ配列 P_NAMES IN VARCHAR2, P_SYSARGS IN SYSARG_ARRAY, -- 引数 SYSTEMデータ P_GE08ARGS IN GEA08ARG_ARRAY -- 引数 USERデータ );
- 導入されたバージョン:
- JDK5.0,
-
フィールドの概要
クラスから継承されたフィールド org.opengion.hayabusa.db.AbstractQuery
ARG_ARRAY, BUFFER_MIDDLE, CR, DB_FETCH_SIZE, DB_MAX_QUERY_TIMEOUT, ERR_MSG, ERR_MSG_ARRAY, SYSARG_ARRAY
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
クラスから継承されたメソッド org.opengion.hayabusa.db.AbstractQuery
createTableModel, execute, execute, execute, execute, getConnection, getDBTableModel, getEditConfig, getErrorCode, getErrorMessage, getExecuteCount, getMaxRowCount, getMergeStatement, getSkipRowCount, getStatement, isUpdate, setConnection, setDBTableModel, setEditConfig, setErrorCode, setErrorMessage, setExecuteCount, setMaxRowCount, setMergeStatement, setResourceManager, setSkipRowCount, setStatement, setUpdateFlag, toString, useParameterMetaData
-
コンストラクタの詳細
-
Query_JDBCPLSQL
public Query_JDBCPLSQL()デフォルトコンストラクター- 変更履歴:
- 6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
-
-
メソッドの詳細
-
execute
引数配列付のクエリーを実行します。 処理自体は、#execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。 ※ 8.5.6.1 (2024/03/29) Oracle関係のPL/SQLなどを処理する execute(ExceptionBiConsumer) を使用します。- 定義:
execute
インタフェース内Query
- オーバーライド:
execute
クラス内AbstractQuery
- パラメータ:
names
- カラム名(CSV形式)dbArrayType
- アレイタイプ名称sysArg
- DBSysArg配列userArg
- DBUserArg配列- 変更履歴:
- 3.1.1.0 (2003/03/28) 同期メソッド(synchronized付き)を非同期に変更する。, 3.5.2.0 (2003/10/20) 内部オブジェクトタイプ名を システムパラメータ で定義します。, 3.5.6.0 (2004/06/18) nullに対する無駄な比較を削除します。, 3.8.0.8 (2005/10/03) エラーメッセージの出力順をメッセージ+Queryに変更します。, 4.0.0.0 (2005/01/31) 引数をすべて受け取って実行するメソッドを標準メソッドとして追加, 6.0.0.0 (2014/04/11) Oracle11g(11.2.0.3のドライバ)対応, 6.3.6.1 (2015/08/28) close(),realClose() 廃止。Queryはキャッシュしません。, 6.4.2.1 (2016/02/05) try-with-resources 文で記述。, 6.9.3.0 (2018/03/26) DB_FETCH_SIZE追加。, 8.5.6.1 (2024/03/29) Oracle関係のPL/SQLなどを処理する execute(ExceptionBiConsumer) を使用します。
-