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 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 using IDatabasePlatform#getT
      Parameters:
      clearCacheModelTimeoutInMs -
    • getClearCacheModelTimeoutInMs

      long getClearCacheModelTimeoutInMs()
    • getDefaultSchema

      String getDefaultSchema()
    • getDefaultCatalog

      String getDefaultCatalog()
    • readDatabase

      Database readDatabase(String catalog, String schema, String[] tableTypes)
      Reads the database model from the live database to which the given connection is pointing.
    • readFromDatabase

      Database readFromDatabase(Table... tables)
    • readTableFromDatabase

      Table readTableFromDatabase(String catalogName, String schemaName, String tablename)
    • readTableFromDatabase

      Table readTableFromDatabase(ISqlTransaction transaction, String catalogName, String schemaName, String tableName)
    • resetCachedTableModel

      void resetCachedTableModel()
    • getTableFromCache

      Table getTableFromCache(String tableName, boolean forceReread)
    • getTableFromCache

      Table getTableFromCache(String catalogName, String schemaName, String tableName, boolean forceReread)
    • createDatabase

      void createDatabase(Database targetDatabase, boolean dropTablesFirst, boolean continueOnError)
    • createTables

      void createTables(boolean dropTablesFirst, boolean continueOnError, Table... tables)
    • alterDatabase

      void alterDatabase(Database desiredDatabase, String triggerPrefix, boolean continueOnError)
    • alterDatabase

      void alterDatabase(Database desiredDatabase, String triggerPrefix, boolean continueOnError, IAlterDatabaseInterceptor[] interceptors)
    • alterTables

      void alterTables(boolean continueOnError, Table... desiredTables)
    • alterTables

      void alterTables(boolean continueOnError, boolean createTableIncludeApplicationTriggers, String triggerPrefix, IAlterDatabaseInterceptor[] interceptors, Table... desiredTables)
    • dropDatabase

      void dropDatabase(Database database, boolean continueOnError)
    • dropTables

      void dropTables(boolean continueOnError, Table... tables)
    • 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

      DmlStatement createDmlStatement(DmlStatementOptions options)
    • getObjectValues

      Object[] getObjectValues(BinaryEncoding encoding, String[] values, Column[] orderedMetaData)
    • 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

      Database readDatabaseFromXml(String filePath, boolean alterCaseToMatchDatabaseDefaultCase)
    • readDatabaseFromXml

      Database readDatabaseFromXml(InputStream in, boolean alterCaseToMatchDatabaseDefaultCase)
    • alterCaseToMatchDatabaseDefaultCase

      String[] alterCaseToMatchDatabaseDefaultCase(String[] values)
    • alterCaseToMatchDatabaseDefaultCase

      String alterCaseToMatchDatabaseDefaultCase(String values)
    • alterCaseToMatchDatabaseDefaultCase

      void alterCaseToMatchDatabaseDefaultCase(Table table)
    • alterCaseToMatchDatabaseDefaultCase

      void alterCaseToMatchDatabaseDefaultCase(Table... tables)
    • alterCaseToMatchDatabaseDefaultCase

      void alterCaseToMatchDatabaseDefaultCase(Database database)
    • prefixDatabase

      void prefixDatabase(String prefix, Database targetTables)
    • isLob

      boolean isLob(Column column)
    • isClob

      boolean isClob(Column column)
    • isBlob

      boolean isBlob(Column column)
    • getLobColumns

      List<Column> getLobColumns(Table table)
    • getSqlScriptReplacementTokens

      Map<String,String> getSqlScriptReplacementTokens()
    • scrubSql

      String scrubSql(String sql)
    • isStoresLowerCaseIdentifiers

      boolean isStoresLowerCaseIdentifiers()
    • isStoresUpperCaseIdentifiers

      boolean isStoresUpperCaseIdentifiers()
    • isStoresMixedCaseQuotedIdentifiers

      boolean isStoresMixedCaseQuotedIdentifiers()
    • getDataSource

      <T> T getDataSource()
    • setMetadataIgnoreCase

      void setMetadataIgnoreCase(boolean value)
    • isMetadataIgnoreCase

      boolean isMetadataIgnoreCase()
    • parseDate

      Date parseDate(int type, String value, boolean useVariableDates)
    • parseQualifiedTableName

      Map<String,String> parseQualifiedTableName(String tableName)
    • makeAllColumnsPrimaryKeys

      Table makeAllColumnsPrimaryKeys(Table table)
    • canColumnBeUsedInWhereClause

      boolean canColumnBeUsedInWhereClause(Column column)
    • makePlatformSpecific

      void makePlatformSpecific(Database database)
    • hasMatchingPlatform

      boolean hasMatchingPlatform(Database database)
    • checkSymTablePermissions

      List<PermissionResult> checkSymTablePermissions(PermissionType... permissionTypes)
    • getLogMinePermission

      PermissionResult getLogMinePermission()
    • isUseMultiThreadSyncTriggers

      boolean isUseMultiThreadSyncTriggers()
    • supportsTransactions

      boolean supportsTransactions()
    • supportsMultiThreadedTransactions

      boolean supportsMultiThreadedTransactions()
    • allowsUniqueIndexDuplicatesWithNulls

      boolean allowsUniqueIndexDuplicatesWithNulls()
    • getEstimatedRowCount

      long getEstimatedRowCount(Table table)
    • getTruncateSql

      String getTruncateSql(Table table)
    • getDeleteSql

      String getDeleteSql(Table table)
    • getTransactions

      List<Transaction> getTransactions()
    • supportsLimitOffset

      boolean supportsLimitOffset()
    • massageForLimitOffset

      String massageForLimitOffset(String sql, int limit, int offset)
    • massageForObjectAlreadyExists

      String massageForObjectAlreadyExists(String sql)
    • massageForObjectDoesNotExist

      String massageForObjectDoesNotExist(String sql)
    • supportsSliceTables

      boolean supportsSliceTables()
    • getSliceTableSql

      String getSliceTableSql(String columnName, int sliceNum, int totalSlices)
    • getCharSetName

      String getCharSetName()
    • supportsParametersInSelect

      boolean supportsParametersInSelect()
    • setDatabaseVersion

      void setDatabaseVersion(DatabaseVersion databaseVersion)
    • getDatabaseVersion

      DatabaseVersion getDatabaseVersion()