接口 TableMetaDataProvider
- 所有已知实现类:
DerbyTableMetaDataProvider
,GenericTableMetaDataProvider
,HsqlTableMetaDataProvider
,OracleTableMetaDataProvider
,PostgresTableMetaDataProvider
public interface TableMetaDataProvider
Interface specifying the API to be implemented by a class providing table meta-data. This is intended for internal use by the Simple JDBC classes.- 从以下版本开始:
- 2.5
- 作者:
- Thomas Risberg
方法概要
所有方法 实例方法 抽象方法 修饰符和类型 方法 说明 String
catalogNameToUse(String catalogName)
Get the catalog name formatted based on meta-data information.String
getSimpleQueryForGetGeneratedKey(String tableName, String keyColumnName)
Get the simple query to retrieve a generated key.List<TableParameterMetaData>
getTableParameterMetaData()
Get the table parameter meta-data that is currently used.void
initializeWithMetaData(DatabaseMetaData databaseMetaData)
Initialize using the database meta-data provided.void
initializeWithTableColumnMetaData(DatabaseMetaData databaseMetaData, String catalogName, String schemaName, String tableName)
Initialize using provided database meta-data, table and column information.boolean
isGeneratedKeysColumnNameArraySupported()
Does this database support a column name String array for retrieving generated keys:Connection.createStruct(String, Object[])
?boolean
isGetGeneratedKeysSimulated()
Does this database support a simple query to retrieve the generated key when the JDBC 3.0 feature of retrieving generated keys is not supported?boolean
isGetGeneratedKeysSupported()
Does this database support the JDBC 3.0 feature of retrieving generated keys:DatabaseMetaData.supportsGetGeneratedKeys()
?boolean
isTableColumnMetaDataUsed()
Are we using the meta-data for the table columns?String
metaDataCatalogNameToUse(String catalogName)
Provide any modification of the catalog name passed in to match the meta-data currently used.String
metaDataSchemaNameToUse(String schemaName)
Provide any modification of the schema name passed in to match the meta-data currently used.String
schemaNameToUse(String schemaName)
Get the schema name formatted based on meta-data information.void
setNativeJdbcExtractor(NativeJdbcExtractor nativeJdbcExtractor)
Set theNativeJdbcExtractor
to use to retrieve the native connection if necessaryString
tableNameToUse(String tableName)
Get the table name formatted based on meta-data information.
方法详细资料
initializeWithMetaData
void initializeWithMetaData(DatabaseMetaData databaseMetaData) throws SQLException
Initialize using the database meta-data provided.- 参数:
databaseMetaData
- used to retrieve database specific information- 抛出:
SQLException
- in case of initialization failure
initializeWithTableColumnMetaData
void initializeWithTableColumnMetaData(DatabaseMetaData databaseMetaData, String catalogName, String schemaName, String tableName) throws SQLException
Initialize using provided database meta-data, table and column information. This initialization can be turned off by specifying that column meta-data should not be used.- 参数:
databaseMetaData
- used to retrieve database specific informationcatalogName
- name of catalog to use (ornull
if none)schemaName
- name of schema name to use (ornull
if none)tableName
- name of the table- 抛出:
SQLException
- in case of initialization failure
tableNameToUse
String tableNameToUse(String tableName)
Get the table name formatted based on meta-data information. This could include altering the case.
catalogNameToUse
String catalogNameToUse(String catalogName)
Get the catalog name formatted based on meta-data information. This could include altering the case.
schemaNameToUse
String schemaNameToUse(String schemaName)
Get the schema name formatted based on meta-data information. This could include altering the case.
metaDataCatalogNameToUse
String metaDataCatalogNameToUse(String catalogName)
Provide any modification of the catalog name passed in to match the meta-data currently used. The returned value will be used for meta-data lookups. This could include altering the case used or providing a base catalog if none is provided.
metaDataSchemaNameToUse
String metaDataSchemaNameToUse(String schemaName)
Provide any modification of the schema name passed in to match the meta-data currently used. The returned value will be used for meta-data lookups. This could include altering the case used or providing a base schema if none is provided.
isTableColumnMetaDataUsed
boolean isTableColumnMetaDataUsed()
Are we using the meta-data for the table columns?
isGetGeneratedKeysSupported
boolean isGetGeneratedKeysSupported()
Does this database support the JDBC 3.0 feature of retrieving generated keys:DatabaseMetaData.supportsGetGeneratedKeys()
?
isGetGeneratedKeysSimulated
boolean isGetGeneratedKeysSimulated()
Does this database support a simple query to retrieve the generated key when the JDBC 3.0 feature of retrieving generated keys is not supported?
getSimpleQueryForGetGeneratedKey
String getSimpleQueryForGetGeneratedKey(String tableName, String keyColumnName)
Get the simple query to retrieve a generated key.
isGeneratedKeysColumnNameArraySupported
boolean isGeneratedKeysColumnNameArraySupported()
Does this database support a column name String array for retrieving generated keys:Connection.createStruct(String, Object[])
?
getTableParameterMetaData
List<TableParameterMetaData> getTableParameterMetaData()
Get the table parameter meta-data that is currently used.- 返回:
- List of
TableParameterMetaData
setNativeJdbcExtractor
void setNativeJdbcExtractor(NativeJdbcExtractor nativeJdbcExtractor)
Set theNativeJdbcExtractor
to use to retrieve the native connection if necessary