パッケージ org.opengion.hayabusa.db
インタフェース Query
- 既知の実装クラスのリスト:
AbstractQuery,Query_JDBC,Query_JDBCArrayCallable,Query_JDBCCallable,Query_JDBCErrMsg,Query_JDBCKeyEntry,Query_JDBCPLSQL,Query_JDBCPrepared,Query_JDBCTableMerge,Query_JDBCTableUpdate,Query_JDBCUpdate
public interface Query
ステートメント文を execute() する事により,データベースを検索した結果を DBTableModel に
割り当てるインターフェースです。
実際にこのインターフェースを継承したクラスでは、データベース以外に
フラットファイルやXMLデータなどを読み込んで DBTableModel を作成させる
様な実装クラスを作成することができます。
- 機能分類
- データ表示, データ編集
- 導入されたバージョン:
- JDK5.0,
-
メソッドの概要
修飾子とタイプメソッド説明voidexecute(int[] rowNo, DBTableModel table) 引数配列付のクエリーを実行します。void引数配列付のクエリーを実行します。void引数配列付のクエリーを実行します。void引数配列付のクエリーを実行します。実行結果の DBTableModel を返します。intエラーコード を取得します。エラーメッセージオブジェクト を取得します。intクエリーの実行結果を返します。intデータベースの最大検索件数を返します。String[]ステートメント文字列(UPDATE,INSERT,SELECT)を取り出します。intデータベースの検索スキップ件数を返します。ステートメント文字列を取り出します。booleanisUpdate()アップデートフラグを取得します。voidsetConnection(Connection conn) Connectionオブジェクトを外部から設定します。voidsetEditConfig(DBEditConfig config) 編集設定オブジェクトをセットします。voidsetMaxRowCount(int maxRowCount) データベースの最大検索件数をセットします。voidsetMergeStatement(String update, String insert, String select) ステートメント文字列(UPDATE,INSERT)をセットします。voidsetResourceManager(ResourceManager resource) リソースマネージャーをセットします。voidsetSkipRowCount(int skipRowCount) データベースの検索スキップ件数をセットします。voidsetStatement(String statement) ステートメント文字列をセットします。
-
メソッドの詳細
-
setConnection
Connectionオブジェクトを外部から設定します。 通常は、Transaction と 接続先(DBID) を使用して作成した Connection を渡します。 このクラスでは、Connection の close() や、ConnectionFactory への返却なども 行いません。それらは、外部処理(通常は、Transactionオブジェクト)で行います。 Connection には、null は登録できません。- パラメータ:
conn- Connectionオブジェクト- 変更履歴:
- 6.3.6.1 (2015/08/28) 新規追加
-
setStatement
ステートメント文字列をセットします。- パラメータ:
statement- ステートメント文字列
-
getStatement
ステートメント文字列を取り出します。- 戻り値:
- ステートメント文字列
-
setMergeStatement
ステートメント文字列(UPDATE,INSERT)をセットします。- パラメータ:
update- UPDATEステートメント文字列insert- INSERTステートメント文字列select- SELECTステートメント文字列(あれば何もしない、なければINSERT処理の判定用)- 変更履歴:
- 7.2.9.1 (2020/10/23) TableUpdateParamTag のマージ(UPDATE,INSERT)対応, 7.4.1.0 (2021/04/23) sqlType="MERGE" 時のみ有効で、where 条件で存在すれば何もしない
-
getMergeStatement
ステートメント文字列(UPDATE,INSERT,SELECT)を取り出します。- 戻り値:
- ステートメント文字列の配列(UPDATE,INSERTの順番)
- 変更履歴:
- 7.2.9.1 (2020/10/23) TableUpdateParamTag のマージ(UPDATE,INSERT)対応
-
execute
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery や { call xxxx( ?,?,? ) } などの CallableStatement の ? 部分の引数を 順番にセットしていきます。- パラメータ:
args- オブジェクトの引数配列- 変更履歴:
- 6.1.1.0 (2015/01/17) 引数配列を可変引数にして、execute() を含めて定義します。
-
execute
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。- パラメータ:
keys- オブジェクトのキー配列args- オブジェクトの引数配列- 変更履歴:
- 4.0.0.0 (2005/01/31) 新規追加
-
execute
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の ? 部分の引数を 順番にセットしていきます。- パラメータ:
names- カラム名(CSV形式)dbArrayType- アレイタイプ名称sysArg- DBSysArg配列userArg- DBUserArg配列- 変更履歴:
- 4.0.0.0 (2005/01/31) 引数をすべて受け取って実行するメソッドを標準メソッドとして追加
-
execute
引数配列付のクエリーを実行します。 処理自体は, #execute() と同様に、各サブクラスの実装に依存します。 これは、PreparedQuery で使用する引数を配列でセットするものです。 select * from emp where deptno = ? and job = ? などの PreparedQuery の [カラム名] 部分の引数を、DBTableModelから順番にセットしていきます。- パラメータ:
rowNo- 選択された行番号配列(登録する対象行)table- DBTableModelオブジェクト(登録する元データ)
-
getExecuteCount
int getExecuteCount()クエリーの実行結果を返します。 クエリーが失敗した場合や,CallableStatement の呼び出し等で実行件数が明確でない 場合は, -1 が返されます。- 戻り値:
- クエリーの実行件数
-
getDBTableModel
実行結果の DBTableModel を返します。- 戻り値:
- DBTableModelオブジェクト
-
getMaxRowCount
int getMaxRowCount()データベースの最大検索件数を返します。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。- 戻り値:
- 最大検索件数
-
setMaxRowCount
データベースの最大検索件数をセットします。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとして登録する最大件数をこの値に設定します。 サーバーのメモリ資源と応答時間の確保の為です。- パラメータ:
maxRowCount- 最大検索件数
-
getSkipRowCount
int getSkipRowCount()データベースの検索スキップ件数を返します。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとしては、スキップ件数分は登録されません。 サーバーのメモリ資源と応答時間の確保の為です。- 戻り値:
- 最大検索件数
-
setSkipRowCount
データベースの検索スキップ件数をセットします。 データベース自体の検索は,指定されたSQLの全件を検索しますが, DBTableModelのデータとしては、スキップ件数分は登録されません。 サーバーのメモリ資源と応答時間の確保の為です。- パラメータ:
skipRowCount- スキップ件数
-
isUpdate
boolean isUpdate()アップデートフラグを取得します。 これは、Query で更新処理の SQL 文を実行したときに true にセットされます。 更新処理が実行:true / 検索処理のみ:false を取得できます。- 戻り値:
- アップデートされたかどうか( 更新処理:true / 検索処理:false )
- 変更履歴:
- 2.1.2.3 (2002/12/02) データベース更新時に、更新フラグをセットするように変更, 4.0.0.0 (2007/07/20) メソッド名変更( getUpdateFlag() ⇒ isUpdate() )
-
setResourceManager
リソースマネージャーをセットします。 これは、言語(ロケール)に応じた DBColumn をあらかじめ設定しておく為に 必要です。 リソースマネージャーが設定されていない、または、所定のキーの DBColumn が リソースに存在しない場合は、内部で DBColumn オブジェクトを作成します。- パラメータ:
resource- リソースマネージャー- 変更履歴:
- 4.0.0.0 (2005/01/31) lang ⇒ ResourceManager へ変更
-
getErrorCode
int getErrorCode()エラーコード を取得します。 エラーコード は、ErrorMessage クラスで規定されているコードです。- 戻り値:
- エラーコード
-
getErrorMessage
エラーメッセージオブジェクト を取得します。- 戻り値:
- エラーメッセージオブジェクト
-
setEditConfig
編集設定オブジェクトをセットします。- パラメータ:
config- 編集設定オブジェクト- 変更履歴:
- 5.3.6.0 (2011/06/01) 新規追加
-