クラス TableFilter_TABLE
java.lang.Object
org.opengion.hayabusa.db.AbstractTableFilter
org.opengion.plugin.table.TableFilter_TABLE
- すべての実装されたインタフェース:
TableFilter
- 直系の既知のサブクラス:
TableFilter_TABLE_DERBY
,TableFilter_TABLE_FIREBIRD
,TableFilter_TABLE_HSQLDB
,TableFilter_TABLE_MYSQL
,TableFilter_TABLE_ORACLE
,TableFilter_TABLE_POSTGRES
,TableFilter_TABLE_SQLSERVER
TableFilter_TABLE は、TableFilter インターフェースを継承した、DBTableModel 処理用の
実装クラスです。
ここでは、テーブル一覧の検索結果より、GF05 のテーブルカラム定義テーブルから
必要な情報を取得し、テーブル作成スクリプトを作成します。
出力ファイルは、テーブル名+"S.sql" という命名規則で作成します。
検索では、(SYSTEM_ID,TBLSYU,TABLE_NAME,NAME_JA,TABLESPACE_NAME,INITIAL_EXTENT,COMMENTS)
の項目を取得する必要があります。
6.1.0.0 (2014/12/26) より、NEXT_EXTENT は使用しなくなりました。
パラメータは、tableFilterタグの keys, vals にそれぞれ記述するか、BODY 部にCSS形式で記述します。
【パラメータ】
{
DIR : {@BASE_DIR}/sql/install/01_TABLE ; 出力ファイルの基準フォルダ(必須)
XML : false ; XML出力を行うかどうか[true/false]を指定します(初期値:false)。
}
- 変更履歴:
- 4.0.0.0 (2005/08/31) 新規作成, 5.6.6.0 (2013/07/05) keys の整合性チェックを追加, 8.1.0.3 (2022/01/21) TableFilter_TABLE のORACLE部分をTableFilter_TABLE_ORACLEに移動する。
- 形式サンプル:
- ●形式: select SYSTEM_ID,TBLSYU,TABLE_NAME,NAME_JA,TABLESPACE_NAME,INITIAL_EXTENT,COMMENTS from GF02 ① <og:tableFilter classId="TABLE" keys="DIR,XML" vals='"{@BASE_DIR}/sql/install/01_TABLE,"' /> ② <og:tableFilter classId="TABLE" > { DIR : {@BASE_DIR}/sql/install/01_TABLE ; XML : false ; } </og:tableFilter>
- 導入されたバージョン:
- JDK1.1,
-
フィールドの概要
フィールド修飾子とタイプフィールド説明protected static final int
データのアクセス用の配列番号 6protected static final int
データのアクセス用の配列番号 0protected static final int
データのアクセス用の配列番号 3protected static final int
データのアクセス用の配列番号 5protected static final int
データのアクセス用の配列番号 2protected static final int
データのアクセス用の配列番号 6protected static final int
データのアクセス用の配列番号 7protected static final int
データのアクセス用の配列番号 1protected static final int
データのアクセス用の配列番号 4protected static final int
データのアクセス用の配列番号 5protected static final int
データのアクセス用の配列番号 3protected static final int
データのアクセス用の配列番号 0protected static final int
データのアクセス用の配列番号 2protected static final int
データのアクセス用の配列番号 4protected static final int
データのアクセス用の配列番号 1クラスから継承されたフィールド org.opengion.hayabusa.db.AbstractTableFilter
BUFFER_MIDDLE, CR, EXEC_END_TAG, EXEC_EXISTS_0_TAG, EXEC_START_TAG, execEndTag, execExistsSQL, isXml, XML_END_TAG, XML_START_TAG
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
修飾子とタイプメソッド説明execute()
DBTableModel処理を実行します。protected String
makeEndLine
(int[] clmNo, String[] data) 定義の最後の部分の処理を実行します。protected String
makeHeadLine
(int[] clmNo, String[] data) ヘッダー部分の処理を実行します。protected String[]
makeLineList
(String[] data, boolean first) 各行部分(カラム定義)の処理を実行します。protected String
makeUniqSeq
(String tableName) ユニークシーケンスの作成処理を実行します。protected String
makeUniqTrig
(String tableName, String uniqName) ユニークシーケンスと関連付けるトリガの作成処理を実行します。クラスから継承されたメソッド org.opengion.hayabusa.db.AbstractTableFilter
getDbid, getDBTableModel, getErrorCode, getErrorMessage, getKeys, getModifyType, getParameterRows, getResource, getReturnMap, getSql, getTableColumnNo, getTransaction, getValue, getViewMarker, initSet, isDebug, makeErrorMessage, setDbid, setDBTableModel, setDebug, setKeysVals, setModifyType, setParameterRows, setParamMap, setResource, setSql, setTransaction, setValue, setViewMarker
-
フィールド詳細
-
SYSTEM_ID
データのアクセス用の配列番号 0- 関連項目:
-
TBLSYU
データのアクセス用の配列番号 1- 関連項目:
-
TABLE_NAME
データのアクセス用の配列番号 2- 関連項目:
-
NAME_JA
データのアクセス用の配列番号 3- 関連項目:
-
TABLESPACE_NAME
データのアクセス用の配列番号 4- 関連項目:
-
INITIAL_EXTENT
データのアクセス用の配列番号 5- 関連項目:
-
COMMENTS
データのアクセス用の配列番号 6- 関連項目:
-
GF05_CLM
データのアクセス用の配列番号 0- 関連項目:
-
GF05_SEQNO
データのアクセス用の配列番号 1- 関連項目:
-
GF05_NAME_JA
データのアクセス用の配列番号 2- 関連項目:
-
GF05_CLS_NAME
データのアクセス用の配列番号 3- 関連項目:
-
GF05_USE_LENGTH
データのアクセス用の配列番号 4- 関連項目:
-
GF05_DATA_DEFAULT
データのアクセス用の配列番号 5- 関連項目:
-
GF05_NOT_NULL
データのアクセス用の配列番号 6- 関連項目:
-
GF05_OPTIONS
データのアクセス用の配列番号 7- 関連項目:
-
-
コンストラクタの詳細
-
TableFilter_TABLE
public TableFilter_TABLE()デフォルトコンストラクター- 変更履歴:
- 6.4.1.1 (2016/01/16) keysMap を、サブクラスから設定させるように変更。
-
-
メソッドの詳細
-
execute
DBTableModel処理を実行します。- 戻り値:
- 実行結果のテーブルモデル
- 変更履歴:
- 3.8.7.0 (2006/12/15) アクセスログ取得の為,ApplicationInfoオブジェクトを設定, 4.0.0.0 (2007/11/28) メソッドの戻り値をチェックします。, 4.3.7.0 (2009/06/01) トリガー、SEQUENCE作成機能、XML出力機能追加, 5.1.1.0 (2009/12/01) XML_START_TAG に、tableName をセットします。, 5.1.9.0 (2010/08/01) Transaction 対応, 5.5.2.6 (2012/05/25) protected変数を、private化したため、getterメソッドで取得するように変更, 5.6.6.0 (2013/07/05) FixLengthData の簡易コンストラクタを使用, 6.0.2.3 (2014/10/10) isXml で、CR + EXEC_END_TAG のキャッシュを作成します。, 6.3.7.0 (2015/09/04) AutoCloseableを使用したtry-with-resources構築に対応。, 6.5.0.1 (2016/10/21) ErrorMessage をまとめるのと、直接 Throwable を渡します。, 8.1.0.3 (2022/01/21) 引数にtableNameを渡すように変更。
-
makeHeadLine
ヘッダー部分の処理を実行します。- パラメータ:
clmNo
- カラム番号配列data
- 1行分のデータ配列- 戻り値:
- ヘッダー部分の文字列
- 変更履歴:
- 5.6.6.0 (2013/07/05) FixLengthData の簡易コンストラクタを使用, 5.6.6.2 (2013/07/19) EXEC_START_TAG の付け忘れ, 6.4.4.2 (2016/04/01) StringBuilderの代わりに、OgBuilderを使用する。, 8.1.0.3 (2022/01/21) EXEC_SQLに、exists属性追加。
- このメソッドは、nullを返しません
-
makeLineList
各行部分(カラム定義)の処理を実行します。 カンマ,カラム,クラス,(,桁数,),初期値,NOT_NULL,拡張機能,コメント開始,行番号,名称,コメント終了 の順に配列にセットします。- パラメータ:
data
- 1行分のデータ配列first
- 最初の行かどうか[true:最初/false:それ以降]- 戻り値:
- 各行部分(カラム定義)配列
- 変更履歴:
- 5.5.1.9 (2012/04/18) useLen.length=0対応, 5.9.13.2 (2016/10/28) シングルクォート対応
-
makeEndLine
定義の最後の部分の処理を実行します。- パラメータ:
clmNo
- カラム番号配列data
- 1行分のデータ配列- 戻り値:
- 定義の最後の部分
- 変更履歴:
- 8.1.0.3 (2022/01/21) TableFilter_TABLE のORACLE部分をTableFilter_TABLE_ORACLEに移動する。
- このメソッドは、nullを返しません
-
makeUniqSeq
ユニークシーケンスの作成処理を実行します。- パラメータ:
tableName
- テーブル名- 戻り値:
- ユニークシーケンス
- 変更履歴:
- 8.1.0.3 (2022/01/21) 引数にtableNameを渡すように変更。, 8.1.0.3 (2022/01/21) TableFilter_TABLE のORACLE部分をTableFilter_TABLE_ORACLEに移動する。 // * @param clmNo カラム番号配列 // * @param data 1行分のデータ配列
- このメソッドは、nullを返しません
-
makeUniqTrig
ユニークシーケンスと関連付けるトリガの作成処理を実行します。 // * @param clmNo カラム番号配列 // * @param data 1行分のデータ配列- パラメータ:
tableName
- テーブル名uniqName
- ユニークトリガ名- 戻り値:
- ユニークシーケンスと関連付けるトリガ
- 変更履歴:
- 8.1.0.3 (2022/01/21) 引数にtableNameを渡すように変更。, 8.1.0.3 (2022/01/21) TableFilter_TABLE のORACLE部分をTableFilter_TABLE_ORACLEに移動する。
- このメソッドは、nullを返しません
-