Package org.jumpmind.db.platform
Interface IDatabasePlatform
- All Known Implementing Classes:
AbstractDatabasePlatform
,AbstractJdbcDatabasePlatform
,AseDatabasePlatform
,CassandraPlatform
,Db2DatabasePlatform
,DerbyDatabasePlatform
,FirebirdDatabasePlatform
,FirebirdDialect1DatabasePlatform
,GenericJdbcDatabasePlatform
,GreenplumPlatform
,H2DatabasePlatform
,HanaDatabasePlatform
,HbasePlatform
,HsqlDb2DatabasePlatform
,HsqlDbDatabasePlatform
,InformixDatabasePlatform
,IngresDatabasePlatform
,InterbaseDatabasePlatform
,KafkaPlatform
,MariaDBDatabasePlatform
,MsSql2000DatabasePlatform
,MsSql2005DatabasePlatform
,MsSql2008DatabasePlatform
,MsSql2016DatabasePlatform
,MySqlDatabasePlatform
,NuoDbDatabasePlatform
,Oracle122DatabasePlatform
,Oracle23DatabasePlatform
,OracleDatabasePlatform
,PostgreSql95DatabasePlatform
,PostgreSqlDatabasePlatform
,RaimaDatabasePlatform
,RedshiftDatabasePlatform
,SqlAnywhere12DatabasePlatform
,SqlAnywhereDatabasePlatform
,SqliteDatabasePlatform
,VoltDbDatabasePlatform
public interface IDatabasePlatform
-
Method Summary
Modifier and TypeMethodDescriptionboolean
String[]
alterCaseToMatchDatabaseDefaultCase
(String[] values) void
alterCaseToMatchDatabaseDefaultCase
(Database database) void
void
alterCaseToMatchDatabaseDefaultCase
(Table... tables) void
alterDatabase
(Database desiredDatabase, String triggerPrefix, boolean continueOnError) void
alterDatabase
(Database desiredDatabase, String triggerPrefix, boolean continueOnError, IAlterDatabaseInterceptor[] interceptors) void
alterTables
(boolean continueOnError, boolean createTableIncludeApplicationTriggers, String triggerPrefix, IAlterDatabaseInterceptor[] interceptors, Table... desiredTables) void
alterTables
(boolean continueOnError, Table... desiredTables) boolean
canColumnBeUsedInWhereClause
(Column column) checkSymTablePermissions
(PermissionType... permissionTypes) void
createDatabase
(Database targetDatabase, boolean dropTablesFirst, boolean continueOnError) createDmlStatement
(DmlStatement.DmlType dmlType, String catalogName, String schemaName, String tableName, Column[] keys, Column[] columns, boolean[] nullKeyValues, String textColumnExpression) createDmlStatement
(DmlStatement.DmlType dmlType, String catalogName, String schemaName, String tableName, Column[] keys, Column[] columns, boolean[] nullKeyValues, String textColumnExpression, boolean namedParameters) createDmlStatement
(DmlStatement.DmlType dmlType, Table table, String textColumnExpression) createDmlStatement
(DmlStatementOptions options) void
createTables
(boolean dropTablesFirst, boolean continueOnError, Table... tables) void
dropDatabase
(Database database, boolean continueOnError) void
dropTables
(boolean continueOnError, Table... tables) long
getCsvStringValue
(BinaryEncoding encoding, Column[] metaData, Row row, boolean[] needEscaped) Returns information about this platform.<T> T
Returns a new ddl builder for the this platform.Returns the ddl reader (which reads a database model from a live database) for this platform.getDeleteSql
(Table table) long
getEstimatedRowCount
(Table table) getLobColumns
(Table table) getName()
Object[]
getObjectValues
(BinaryEncoding encoding, String[] values, Column[] orderedMetaData) Object[]
getObjectValues
(BinaryEncoding encoding, String[] values, Column[] orderedMetaData, boolean useVariableDates, boolean fitToColumn) Object[]
getObjectValues
(BinaryEncoding encoding, Table table, String[] columnNames, String[] values) Object[]
getObjectValues
(BinaryEncoding encoding, Table table, String[] columnNames, String[] values, boolean useVariableDates, boolean fitToColumn) getSliceTableSql
(String columnName, int sliceNum, int totalSlices) String[]
getStringValues
(BinaryEncoding encoding, Column[] metaData, Row row, boolean useVariableDates, boolean indexByPosition) getTableFromCache
(String tableName, boolean forceReread) getTableFromCache
(String catalogName, String schemaName, String tableName, boolean forceReread) getTruncateSql
(Table table) boolean
hasMatchingPlatform
(Database database) boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
makeAllColumnsPrimaryKeys
(Table table) void
makePlatformSpecific
(Database database) massageForLimitOffset
(String sql, int limit, int offset) parseQualifiedTableName
(String tableName) void
prefixDatabase
(String prefix, Database targetTables) readDatabase
(String catalog, String schema, String[] tableTypes) Reads the database model from the live database to which the given connection is pointing.readDatabaseFromXml
(InputStream in, boolean alterCaseToMatchDatabaseDefaultCase) readDatabaseFromXml
(String filePath, boolean alterCaseToMatchDatabaseDefaultCase) readFromDatabase
(Table... tables) readTableFromDatabase
(String catalogName, String schemaName, String tablename) readTableFromDatabase
(ISqlTransaction transaction, String catalogName, String schemaName, String tableName) void
void
setClearCacheModelTimeoutInMs
(long clearCacheModelTimeoutInMs) The amount of time table metadata will be cached when usingIDatabasePlatform#getT
void
setDatabaseVersion
(DatabaseVersion databaseVersion) void
setMetadataIgnoreCase
(boolean value) boolean
boolean
boolean
boolean
boolean
-
Method Details
-
getName
String getName()- Returns:
- a constant that represents this database type from
DatabaseNamesConstants
- See Also:
-
getDatabaseInfo
DatabaseInfo getDatabaseInfo()Returns information about this platform.- Returns:
- The info object
-
getDdlBuilder
IDdlBuilder getDdlBuilder()Returns a new ddl builder for the this platform. -
getDdlReader
IDdlReader getDdlReader()Returns the ddl reader (which reads a database model from a live database) for this platform.- Returns:
- The model reader
-
getSqlTemplate
ISqlTemplate getSqlTemplate() -
getSqlTemplateDirty
ISqlTemplate getSqlTemplateDirty() -
setClearCacheModelTimeoutInMs
void setClearCacheModelTimeoutInMs(long clearCacheModelTimeoutInMs) The amount of time table metadata will be cached when usingIDatabasePlatform#getT
- Parameters:
clearCacheModelTimeoutInMs
-
-
getClearCacheModelTimeoutInMs
long getClearCacheModelTimeoutInMs() -
getDefaultSchema
String getDefaultSchema() -
getDefaultCatalog
String getDefaultCatalog() -
readDatabase
Reads the database model from the live database to which the given connection is pointing. -
readFromDatabase
-
readTableFromDatabase
-
readTableFromDatabase
Table readTableFromDatabase(ISqlTransaction transaction, String catalogName, String schemaName, String tableName) -
resetCachedTableModel
void resetCachedTableModel() -
getTableFromCache
-
getTableFromCache
-
createDatabase
-
createTables
-
alterDatabase
-
alterDatabase
void alterDatabase(Database desiredDatabase, String triggerPrefix, boolean continueOnError, IAlterDatabaseInterceptor[] interceptors) -
alterTables
-
alterTables
void alterTables(boolean continueOnError, boolean createTableIncludeApplicationTriggers, String triggerPrefix, IAlterDatabaseInterceptor[] interceptors, Table... desiredTables) -
dropDatabase
-
dropTables
-
createDmlStatement
DmlStatement createDmlStatement(DmlStatement.DmlType dmlType, Table table, String textColumnExpression) -
createDmlStatement
DmlStatement createDmlStatement(DmlStatement.DmlType dmlType, String catalogName, String schemaName, String tableName, Column[] keys, Column[] columns, boolean[] nullKeyValues, String textColumnExpression) -
createDmlStatement
DmlStatement createDmlStatement(DmlStatement.DmlType dmlType, String catalogName, String schemaName, String tableName, Column[] keys, Column[] columns, boolean[] nullKeyValues, String textColumnExpression, boolean namedParameters) -
createDmlStatement
-
getObjectValues
-
getObjectValues
Object[] getObjectValues(BinaryEncoding encoding, Table table, String[] columnNames, String[] values) -
getObjectValues
Object[] getObjectValues(BinaryEncoding encoding, Table table, String[] columnNames, String[] values, boolean useVariableDates, boolean fitToColumn) -
getObjectValues
Object[] getObjectValues(BinaryEncoding encoding, String[] values, Column[] orderedMetaData, boolean useVariableDates, boolean fitToColumn) -
getStringValues
String[] getStringValues(BinaryEncoding encoding, Column[] metaData, Row row, boolean useVariableDates, boolean indexByPosition) -
getCsvStringValue
String getCsvStringValue(BinaryEncoding encoding, Column[] metaData, Row row, boolean[] needEscaped) -
readDatabaseFromXml
-
readDatabaseFromXml
-
alterCaseToMatchDatabaseDefaultCase
-
alterCaseToMatchDatabaseDefaultCase
-
alterCaseToMatchDatabaseDefaultCase
-
alterCaseToMatchDatabaseDefaultCase
-
alterCaseToMatchDatabaseDefaultCase
-
prefixDatabase
-
isLob
-
isClob
-
isBlob
-
getLobColumns
-
getSqlScriptReplacementTokens
-
scrubSql
-
isStoresLowerCaseIdentifiers
boolean isStoresLowerCaseIdentifiers() -
isStoresUpperCaseIdentifiers
boolean isStoresUpperCaseIdentifiers() -
isStoresMixedCaseQuotedIdentifiers
boolean isStoresMixedCaseQuotedIdentifiers() -
getDataSource
<T> T getDataSource() -
setMetadataIgnoreCase
void setMetadataIgnoreCase(boolean value) -
isMetadataIgnoreCase
boolean isMetadataIgnoreCase() -
parseDate
-
parseQualifiedTableName
-
makeAllColumnsPrimaryKeys
-
canColumnBeUsedInWhereClause
-
makePlatformSpecific
-
hasMatchingPlatform
-
checkSymTablePermissions
-
getLogMinePermission
PermissionResult getLogMinePermission() -
isUseMultiThreadSyncTriggers
boolean isUseMultiThreadSyncTriggers() -
supportsTransactions
boolean supportsTransactions() -
supportsMultiThreadedTransactions
boolean supportsMultiThreadedTransactions() -
allowsUniqueIndexDuplicatesWithNulls
boolean allowsUniqueIndexDuplicatesWithNulls() -
getEstimatedRowCount
-
getTruncateSql
-
getDeleteSql
-
getTransactions
List<Transaction> getTransactions() -
supportsLimitOffset
boolean supportsLimitOffset() -
massageForLimitOffset
-
massageForObjectAlreadyExists
-
massageForObjectDoesNotExist
-
supportsSliceTables
boolean supportsSliceTables() -
getSliceTableSql
-
getCharSetName
String getCharSetName() -
supportsParametersInSelect
boolean supportsParametersInSelect() -
setDatabaseVersion
-
getDatabaseVersion
DatabaseVersion getDatabaseVersion()
-