org.seasar.extension.jdbc.gen.dialect
インタフェース GenDialect

既知の実装クラスの一覧:
Db2390GenDialect, Db2400GenDialect, Db2GenDialect, DerbyGenDialect, FirebirdGenDialect, H2GenDialect, HsqlGenDialect, InterbaseGenDialect, MaxdbGenDialect, Mssql2005GenDialect, MssqlGenDialect, MysqlGenDialect, OracleGenDialect, Postgre81GenDialect, PostgreGenDialect, SqliteGenDialect, StandardGenDialect, SybaseGenDialect

public interface GenDialect

RDBMSごとの方言を扱うインタフェースです。

作成者:
taedium

入れ子のクラスの概要
static interface GenDialect.ColumnType
          カラム型です。
static interface GenDialect.SqlBlockContext
          SQLブロックのコンテキストです。
 
メソッドの概要
 GenDialect.SqlBlockContext createSqlBlockContext()
          SQLブロックのコンテキストを作成します。
 java.lang.String getCloseQuote()
          終了を表すクォートを返します。
 java.util.Map<java.lang.String,java.lang.String> getColumnCommentMap(java.sql.Connection connection, java.lang.String catalogName, java.lang.String schemaName, java.lang.String tableName)
          カラムのコメントをデータベースから直接取得しマップに詰めて返します。
 GenDialect.ColumnType getColumnType(java.lang.String columnTypeName, int sqlType)
          カラム型を返します。
 GenerationType getDefaultGenerationType()
          デフォルトのGenerationTypeを返します。
 java.lang.String getDefaultSchemaName(java.lang.String userName)
          デフォルトのスキーマ名を返します。
 java.lang.String getDropForeignKeySyntax()
          外部キーを削除する構文を返します。
 java.lang.String getDropUniqueKeySyntax()
          一意キーを削除する構文を返します。
 java.lang.String getIdentityColumnDefinition()
          IDENTITYカラムの定義を返します。
 java.lang.String getIdentityInsertDisableStatement(java.lang.String tableName)
          IDENTITYカラムに対するinsertを無効化するステートメントを返します。
 java.lang.String getIdentityInsertEnableStatement(java.lang.String tableName)
          IDENTITYカラムに対するinsertを有効化するステートメントを返します。
 java.lang.String getName()
          名前を返します。
 java.lang.String getOpenQuote()
          開始を表すクォートを返します。
 java.lang.String getSequenceDefinitionFragment(java.lang.String dataType, long initialValue, int allocationSize)
          シーケンス定義の断片を返します。
 java.lang.String getSequenceNextValString(java.lang.String sequenceName, int allocationSize)
          シーケンスの値を取得するSQLを返します。
 java.lang.String getSqlBlockDelimiter()
          SQLブロックの区切り文字を返します。
 SqlType getSqlType(int sqlType)
          SQL型を返します。
 SqlType getSqlType(ValueTypeProvider valueTypeProvider, PropertyMeta propertyMeta)
          SQL型を返します。
 java.lang.String getTableComment(java.sql.Connection connection, java.lang.String catalogName, java.lang.String schemaName, java.lang.String tableName)
          テーブルのコメントをデータベースから直接取得します。
 boolean isAutoIncrement(java.sql.Connection connection, java.lang.String catalogName, java.lang.String schemaName, java.lang.String tableName, java.lang.String columnName)
          列の値が自動的に増分される場合trueを返します。
 boolean isColumnNotFound(java.lang.Throwable throwable)
          カラムが存在しない例外を表す場合trueを返します。
 boolean isJdbcCommentAvailable()
          JDBCのコメント取得機能が利用できる場合trueを返します。
 boolean isSequenceNotFound(java.lang.Throwable throwable)
          シーケンスが存在しない例外を表す場合trueを返します。
 boolean isTableNotFound(java.lang.Throwable throwable)
          テーブルが存在しない例外を表す場合trueを返します。
 java.lang.String quote(java.lang.String value)
          クォートで囲みます。
 boolean supportsCommentInCreateTable()
          CREATE TABLEでコメントをサポートする場合trueを返します。
 boolean supportsCommentOn()
          COMMENT ONをサポートする場合trueを返します。
 boolean supportsGetIndexInfo(java.lang.String catalogName, java.lang.String schemaName, java.lang.String tableName)
          DatabaseMetaData.getIndexInfo(String, String, String, boolean, boolean) をサポートする場合trueを返します。
 boolean supportsIdentity()
          IDENTITYカラムをサポートしている場合trueを返します。
 boolean supportsIdentityInsert()
          IDENTITYカラムに対するinsertをサポートしている場合trueを返します。
 boolean supportsIdentityInsertControlStatement()
          IDENTITYカラムに対するinsertの有効/無効を制御するステートメントをサポートしている場合trueを返します。
 boolean supportsNullableUnique()
          NULLが可能な一意制約をサポートしている場合trueを返します。
 boolean supportsReferentialDeleteRule()
          参照整合制約の削除規則をサポートする場合trueを返します。
 boolean supportsReferentialUpdateRule()
          参照整合制約の更新規則をサポートする場合trueを返します。
 boolean supportsSequence()
          シーケンスをサポートする場合trueを返します。
 java.lang.String unquote(java.lang.String value)
          クォートを取り除きます。
 

メソッドの詳細

getName

java.lang.String getName()
名前を返します。

戻り値:
名前

getDefaultSchemaName

java.lang.String getDefaultSchemaName(java.lang.String userName)
デフォルトのスキーマ名を返します。

パラメータ:
userName - ユーザー名
戻り値:
スキーマ名

getSqlType

SqlType getSqlType(int sqlType)
                   throws UnsupportedSqlTypeRuntimeException
SQL型を返します。

パラメータ:
sqlType - JDBCのSQL型
戻り値:
SQL型
例外:
UnsupportedSqlTypeRuntimeException - サポートされていないJDBCのSQL型が渡された場合

getSqlType

SqlType getSqlType(ValueTypeProvider valueTypeProvider,
                   PropertyMeta propertyMeta)
SQL型を返します。

パラメータ:
valueTypeProvider - ValueTypeの提供者
propertyMeta - プロパティメタデータ
戻り値:
SQL型
例外:
UnsupportedSqlTypeRuntimeException - サポートされていないJDBCのSQL型が渡された場合

getColumnType

GenDialect.ColumnType getColumnType(java.lang.String columnTypeName,
                                    int sqlType)
カラム型を返します。

パラメータ:
columnTypeName - カラムの型名
sqlType - JDBCのSQL型
戻り値:
カラム型、サポートされていないカラムの型名の場合null

getDefaultGenerationType

GenerationType getDefaultGenerationType()
デフォルトのGenerationTypeを返します。

戻り値:
デフォルトのGenerationType

getOpenQuote

java.lang.String getOpenQuote()
開始を表すクォートを返します。

戻り値:
開始を表すクォート

getCloseQuote

java.lang.String getCloseQuote()
終了を表すクォートを返します。

戻り値:
終了を表すクォート

quote

java.lang.String quote(java.lang.String value)
クォートで囲みます。

パラメータ:
value - 値
戻り値:
クォートで囲まれた値

unquote

java.lang.String unquote(java.lang.String value)
クォートを取り除きます。

パラメータ:
value - 値
戻り値:
クォートが取り除かれた値

supportsSequence

boolean supportsSequence()
シーケンスをサポートする場合trueを返します。

戻り値:
シーケンスをサポートする場合true、しない場合false

supportsGetIndexInfo

boolean supportsGetIndexInfo(java.lang.String catalogName,
                             java.lang.String schemaName,
                             java.lang.String tableName)
DatabaseMetaData.getIndexInfo(String, String, String, boolean, boolean) をサポートする場合trueを返します。

パラメータ:
catalogName - カタログ名
schemaName - スキーマ名
tableName - テーブル名
戻り値:
DatabaseMetaData.getIndexInfo(String, String, String, boolean, boolean) をサポートする場合true

getSequenceDefinitionFragment

java.lang.String getSequenceDefinitionFragment(java.lang.String dataType,
                                               long initialValue,
                                               int allocationSize)
シーケンス定義の断片を返します。

この断片は create sequence 以降に続きます。

パラメータ:
dataType - データタイプ
initialValue - 初期値
allocationSize - 割り当てサイズ
戻り値:

getSqlBlockDelimiter

java.lang.String getSqlBlockDelimiter()
SQLブロックの区切り文字を返します。

戻り値:
SQLブロックの区切り文字、SQLブロックの区切り文字蛾存在しない場合null

getIdentityColumnDefinition

java.lang.String getIdentityColumnDefinition()
IDENTITYカラムの定義を返します。

戻り値:
IDENTITYカラムの定義

getDropForeignKeySyntax

java.lang.String getDropForeignKeySyntax()
外部キーを削除する構文を返します。

戻り値:
外部キーを削除する構文

getDropUniqueKeySyntax

java.lang.String getDropUniqueKeySyntax()
一意キーを削除する構文を返します。

戻り値:
外部キーを削除する構文

isTableNotFound

boolean isTableNotFound(java.lang.Throwable throwable)
テーブルが存在しない例外を表す場合trueを返します。

パラメータ:
throwable - 何らかの例外
戻り値:
テーブルが存在しない例外を表す場合true

isColumnNotFound

boolean isColumnNotFound(java.lang.Throwable throwable)
カラムが存在しない例外を表す場合trueを返します。

パラメータ:
throwable - 何らかの例外
戻り値:
カラムが存在しない例外を表す場合true

isSequenceNotFound

boolean isSequenceNotFound(java.lang.Throwable throwable)
シーケンスが存在しない例外を表す場合trueを返します。

パラメータ:
throwable - 何らかの例外
戻り値:
シーケンスが存在しない例外を表す場合true

createSqlBlockContext

GenDialect.SqlBlockContext createSqlBlockContext()
SQLブロックのコンテキストを作成します。

戻り値:
SQLブロックのコンテキスト

supportsIdentityInsert

boolean supportsIdentityInsert()
IDENTITYカラムに対するinsertをサポートしている場合trueを返します。

戻り値:
IDENTITYカラムに対するinsertをサポートしている場合true

supportsIdentityInsertControlStatement

boolean supportsIdentityInsertControlStatement()
IDENTITYカラムに対するinsertの有効/無効を制御するステートメントをサポートしている場合trueを返します。

戻り値:
IDENTITYカラムに対するinsertをサポートしている場合true

getIdentityInsertEnableStatement

java.lang.String getIdentityInsertEnableStatement(java.lang.String tableName)
IDENTITYカラムに対するinsertを有効化するステートメントを返します。

パラメータ:
tableName - テーブル名
戻り値:
IDENTITYカラムに対するinsertを有効化するステートメント

getIdentityInsertDisableStatement

java.lang.String getIdentityInsertDisableStatement(java.lang.String tableName)
IDENTITYカラムに対するinsertを無効化するステートメントを返します。

パラメータ:
tableName - テーブル名
戻り値:
IDENTITYカラムに対するinsertを無効化するステートメント

supportsNullableUnique

boolean supportsNullableUnique()
NULLが可能な一意制約をサポートしている場合trueを返します。

戻り値:
NULLが可能な一意制約をサポートしている場合true

supportsIdentity

boolean supportsIdentity()
IDENTITYカラムをサポートしている場合trueを返します。

戻り値:
IDENTITYカラムをサポートしている場合true

getSequenceNextValString

java.lang.String getSequenceNextValString(java.lang.String sequenceName,
                                          int allocationSize)
シーケンスの値を取得するSQLを返します。

パラメータ:
sequenceName - シーケンス名
allocationSize - 割り当てサイズ
戻り値:
シーケンスの値を取得するSQL

supportsCommentInCreateTable

boolean supportsCommentInCreateTable()
CREATE TABLEでコメントをサポートする場合trueを返します。

戻り値:
コメントをサポートする場合true

supportsCommentOn

boolean supportsCommentOn()
COMMENT ONをサポートする場合trueを返します。

戻り値:
COMMENT ONをサポートする場合true

isJdbcCommentAvailable

boolean isJdbcCommentAvailable()
JDBCのコメント取得機能が利用できる場合trueを返します。

JDBCのコメント取得機能が利用できるとは、次のメソッドでREMARKSカラムの値が取得できることを意味します。

戻り値:
JDBCのコメント取得機能が利用できる場合true

getTableComment

java.lang.String getTableComment(java.sql.Connection connection,
                                 java.lang.String catalogName,
                                 java.lang.String schemaName,
                                 java.lang.String tableName)
                                 throws java.sql.SQLException
テーブルのコメントをデータベースから直接取得します。

isJdbcCommentAvailable()trueを返す場合に利用できます。

パラメータ:
connection - コネクション
catalogName - カタログ名
schemaName - スキーマ名
tableName - テーブル名
戻り値:
テーブルのコメント、存在しない場合null
例外:
java.sql.SQLException - SQL例外が発生した場合

getColumnCommentMap

java.util.Map<java.lang.String,java.lang.String> getColumnCommentMap(java.sql.Connection connection,
                                                                     java.lang.String catalogName,
                                                                     java.lang.String schemaName,
                                                                     java.lang.String tableName)
                                                                     throws java.sql.SQLException
カラムのコメントをデータベースから直接取得しマップに詰めて返します。

isJdbcCommentAvailable()trueを返す場合に利用できます。

戻り値のマップのキーは大文字小文字を気にしません。 カラム名に対応するコメントが存在しない、値はnullになります。

パラメータ:
connection - コネクション
catalogName - カタログ名
schemaName - スキーマ名
tableName - テーブル名
戻り値:
大文字小文字を気にしないカラム名をキー、カラムのコメントを値とするマップ
例外:
java.sql.SQLException - SQL例外が発生した場合

supportsReferentialDeleteRule

boolean supportsReferentialDeleteRule()
参照整合制約の削除規則をサポートする場合trueを返します。

戻り値:
参照整合制約の削除規則をサポートする場合true

supportsReferentialUpdateRule

boolean supportsReferentialUpdateRule()
参照整合制約の更新規則をサポートする場合trueを返します。

戻り値:
参照整合制約の更新規則をサポートする場合true

isAutoIncrement

boolean isAutoIncrement(java.sql.Connection connection,
                        java.lang.String catalogName,
                        java.lang.String schemaName,
                        java.lang.String tableName,
                        java.lang.String columnName)
                        throws java.sql.SQLException
列の値が自動的に増分される場合trueを返します。

パラメータ:
connection - コネクション
catalogName - カタログ名
schemaName - スキーマ名
tableName - テーブル名
columnName - カラム名
戻り値:
列が自動的に増分される場合true、そうでない場合false
例外:
java.sql.SQLException - SQL例外が発生した場合


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.