パッケージ org.opengion.fukurou.db
列挙型 DBFunctionName
- java.lang.Object
-
- java.lang.Enum<DBFunctionName>
-
- org.opengion.fukurou.db.DBFunctionName
-
- すべての実装されたインタフェース:
java.io.Serializable
,java.lang.Comparable<DBFunctionName>
public enum DBFunctionName extends java.lang.Enum<DBFunctionName>
各データベースに対応するenum名を返します。 主に、各データベースにおける関数名の差異を吸収するためのenumです。 本来は、互換性のあるファンクション以外、使用しないようにしましょう。 また、無ければ互換性パックなどで、ファンクションを定義してしまうのも 一つの方法です。各データベースにおける関数 データベース名 連結 部分文字列 日付関数 {@DBF.XXX} CON SUBSTR SYSDATE ORACLE || SUBSTR SYSDATE HSQL || SUBSTR CURRENT_TIMESTAMP POSTGRES || SUBSTR CURRENT_DATE MYSQL || SUBSTR now() SQLSERVER + SUBSTRING GETDATE() FIREBIRD || SUBSTR CURRENT_DATE DERBY || SUBSTR CURRENT_TIMESTAMP CACHE || SUBSTRING SYSDATE H2 || SUBSTR SYSDATE OTHER || SUBSTR SYSDATE - 変更履歴:
- 5.1.4.0 (2010/03/01) 新規作成, 5.8.5.0 (2015/03/06) CACHE追加
- バージョン
- 5.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK5.0,
-
-
メソッドの概要
すべてのメソッド staticメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 static DBFunctionName
getDBName(java.lang.String dbName)
各データベースに対応するenum名を返します。java.lang.String
getFunctionName(java.lang.String func)
共通ファンクションに対応するデータベース個別のファンクション名を返します。static java.lang.String
getFunctionName(java.lang.String func, java.lang.String dbid)
各データベースに対応するファンクション名を返します。int
getSequence(java.lang.String seqName, Transaction tran)
シーケンス名よりシーケンスオブジェクトを検索し、次の値を取り出します。int
getSequence(java.lang.String seqName, Transaction tran, java.lang.String DBID)
シーケンス名よりシーケンスオブジェクトを検索し、次の値を取り出します。static DBFunctionName
valueOf(java.lang.String name)
指定した名前を持つこの型の列挙型定数を返します。static DBFunctionName[]
values()
この列挙型の定数を含む配列を宣言されている順序で返します。
-
-
-
列挙型定数の詳細
-
ORACLE
public static final DBFunctionName ORACLE
-
HSQL
public static final DBFunctionName HSQL
-
POSTGRES
public static final DBFunctionName POSTGRES
-
MYSQL
public static final DBFunctionName MYSQL
-
SQLSERVER
public static final DBFunctionName SQLSERVER
-
FIREBIRD
public static final DBFunctionName FIREBIRD
-
DERBY
public static final DBFunctionName DERBY
-
CACHE
public static final DBFunctionName CACHE
-
H2
public static final DBFunctionName H2
-
OTHER
public static final DBFunctionName OTHER
-
-
メソッドの詳細
-
values
public static DBFunctionName[] values()
この列挙型の定数を含む配列を宣言されている順序で返します。 このメソッドは次のようにして定数を反復するために 使用できます:for (DBFunctionName c : DBFunctionName.values()) System.out.println(c);
- 戻り値:
- この列挙型の定数を含む、宣言されている順序での配列
-
valueOf
public static DBFunctionName valueOf(java.lang.String name)
指定した名前を持つこの型の列挙型定数を返します。 文字列は、この型の列挙型定数を宣言するのに使用した識別子と正確に 一致している必要があります。(余分な空白文字を含めることは できません。)- パラメータ:
name
- 返される列挙型定数の名前。- 戻り値:
- 指定した名前の列挙型定数
- 例外:
java.lang.IllegalArgumentException
- この列挙型に、指定した名前の定数がない場合java.lang.NullPointerException
- 引数がnullの場合
-
getFunctionName
public java.lang.String getFunctionName(java.lang.String func)
共通ファンクションに対応するデータベース個別のファンクション名を返します。 現時点では、NAME,CON,SUBSTR のみ使用できます。- パラメータ:
func
- 共通ファンクション- 戻り値:
- ファンクション名
- 変更履歴:
- 5.1.4.0 (2010/03/01) 新規作成, 6.2.2.1 (2015/03/31) SYSDATE 項目追加, 6.3.9.1 (2015/11/27) メソッドの出口は、最後の1か所にすべきです(PMD)。, 5.9.19.1 (2017/04/14) DBF.TYPE追加
-
getFunctionName
public static java.lang.String getFunctionName(java.lang.String func, java.lang.String dbid)
各データベースに対応するファンクション名を返します。- パラメータ:
func
- ファンクション名(定義文字)dbid
- 接続先ID- 戻り値:
- 実ファンクション名
- 変更履歴:
- 4.3.8.0 (2009/08/01) SUBSTRを追加, 5.1.2.0 (2010/01/01) MySQL対応,SUBSTRB廃止(帳票データの分割の内部処理化に伴う), 5.1.4.0 (2010/03/01) データベース名 ではなく、dbid で判断するように変更, 5.7.7.2 (2014/06/20) DBF.NAME 時の処理の簡素化, 6.2.1.0 (2015/03/13) NAME だけ特殊処理するのではなく、統一する。
-
getSequence
public int getSequence(java.lang.String seqName, Transaction tran)
シーケンス名よりシーケンスオブジェクトを検索し、次の値を取り出します。 DBに対するシーケンスオブジェクトは予め作成されている必要があります。 また、MySQLの場合は、シーケンスオブジェクトが実装されていないため、 内部的には、引数のシーケンス名と同じ名前のテーブルから、Integer型の "SEQID"という項目名を検索することにより、シーケンスをエミュレートしています。- パラメータ:
seqName
- シーケンス名tran
- トランザクション- 戻り値:
- シーケンス番号
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加, 5.8.5.0 (2015/03/06) CACHE追加, 5.9.31.1 (2018/04/13) DBID追加対応
-
getSequence
public int getSequence(java.lang.String seqName, Transaction tran, java.lang.String DBID)
シーケンス名よりシーケンスオブジェクトを検索し、次の値を取り出します。 DBに対するシーケンスオブジェクトは予め作成されている必要があります。 また、MySQLの場合は、シーケンスオブジェクトが実装されていないため、 内部的には、引数のシーケンス名と同じ名前のテーブルから、Integer型の "SEQID"という項目名を検索することにより、シーケンスをエミュレートしています。- パラメータ:
seqName
- シーケンス名tran
- トランザクションDBID
- DBID- 戻り値:
- シーケンス番号
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加, 5.8.5.0 (2015/03/06) CACHE追加, 6.4.9.3 (2016/08/26) JavaDB(APACHE DERBY) の追加, 5.9.31.1 (2018/04/13) DBID追加対応, 6.9.8.0 (2018/05/28) DBID 対応漏れ,arg引数がないことを明確にするため、nullを渡します。
-
getDBName
public static DBFunctionName getDBName(java.lang.String dbName)
各データベースに対応するenum名を返します。- パラメータ:
dbName
- データベース名(null不可)- 戻り値:
- データベースに対応するenum名
- 変更履歴:
- 5.1.4.0 (2010/03/01) 新規作成, 5.8.5.0 (2015/03/06) CACHE追加, 6.3.9.1 (2015/11/27) メソッドの出口は、最後の1か所にすべきです(PMD)。, 6.4.5.0 (2016/04/08) 規定以外のデータベースでも、動作するように、OTHER を用意する。, 6.4.9.3 (2016/08/26) JavaDB(APACHE DERBY) の追加, 6.8.3.0 (2017/11/27) H2 の追加
- このメソッドは、nullを返しません
-
-