Package liquibase.database.core
Class CockroachDatabase
- java.lang.Object
-
- liquibase.database.AbstractJdbcDatabase
-
- liquibase.database.core.PostgresDatabase
-
- liquibase.database.core.CockroachDatabase
-
- All Implemented Interfaces:
AutoCloseable,Database,PrioritizedService
public class CockroachDatabase extends PostgresDatabase
-
-
Field Summary
-
Fields inherited from class liquibase.database.core.PostgresDatabase
MINIMUM_DBMS_MAJOR_VERSION, MINIMUM_DBMS_MINOR_VERSION, PRODUCT_NAME, VALID_AUTO_INCREMENT_COLUMN_TYPE_NAMES
-
Fields inherited from class liquibase.database.AbstractJdbcDatabase
caseSensitive, currentDateTimeFunction, dateFunctions, defaultAutoIncrementBy, defaultAutoIncrementStartWith, defaultCatalogName, defaultSchemaName, quotingStrategy, sequenceCurrentValueFunction, sequenceNextValueFunction, unmodifiableDataTypes, unquotedObjectsAreUppercased
-
Fields inherited from interface liquibase.servicelocator.PrioritizedService
COMPARATOR, PRIORITY_DATABASE, PRIORITY_DEFAULT
-
-
Constructor Summary
Constructors Constructor Description CockroachDatabase()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetDatabaseMajorVersion()intgetDatabaseMinorVersion()protected StringgetDefaultDatabaseProductName()IntegergetDefaultPort()intgetPriority()StringgetShortName()Returns an all-lower-case short name of the product.booleanisCorrectDatabaseImplementation(DatabaseConnection conn)Is this AbstractDatabase subclass the correct one to use for the given connection.voidsetConnection(DatabaseConnection conn)booleansupportsDDLInTransaction()Determines if the database supports DDL within a transaction or not.booleansupportsInitiallyDeferrableColumns()Returns whether this database support initially deferrable columns.booleansupportsTablespaces()booleanuseSerialDatatypes()Should the database use "serial" datatypes vs.-
Methods inherited from class liquibase.database.core.PostgresDatabase
correctObjectName, equals, escapeObjectName, generateAutoIncrementBy, generateAutoIncrementStartWith, generatePrimaryKeyName, getAutoIncrementClause, getAutoIncrementClause, getConnectionSchemaNameCallStatement, getDatabaseChangeLogLockTableName, getDatabaseChangeLogTableName, getDefaultDriver, getMaxFractionalDigitsForTimestamp, getSchemaAndCatalogCase, getSystemViews, hashCode, hasMixedCase, isReservedWord, isSystemObject, rollback, setDefaultCatalogName, supportsCatalogInObjectName, supportsSequences, unescapeDataTypeName
-
Methods inherited from class liquibase.database.AbstractJdbcDatabase
addReservedWords, canCreateChangeLogTable, close, commit, correctSchema, correctSchema, createsIndexesForForeignKeys, dataTypeIsNotModifiable, disableForeignKeyChecks, doesTagExist, dropDatabaseObjects, enableForeignKeyChecks, escapeColumnName, escapeColumnName, escapeColumnNameList, escapeConstraintName, escapeDataTypeName, escapeIndexName, escapeObjectName, escapeSequenceName, escapeStringForDatabase, escapeTableName, escapeViewName, execute, executeRollbackStatements, executeRollbackStatements, executeStatements, filterRollbackVisitors, generateDatabaseFunctionValue, get, getAutoCommitMode, getAutoIncrementByClause, getAutoIncrementClause, getAutoIncrementClosing, getAutoIncrementOpening, getAutoIncrementStartWithClause, getConcatSql, getConnection, getConnectionCatalogName, getConnectionSchemaName, getContainingObjects, getCurrentDateTimeFunction, getDatabaseProductName, getDatabaseProductVersion, getDataTypeMaxParameters, getDateFunctions, getDateLiteral, getDateLiteral, getDateLiteral, getDateTimeLiteral, getDefaultCatalogName, getDefaultFractionalDigitsForTimestamp, getDefaultScaleForNativeDataType, getDefaultSchema, getDefaultSchemaName, getFetchSize, getJdbcCatalogName, getJdbcCatalogName, getJdbcSchemaName, getJdbcSchemaName, getLineComment, getLiquibaseCatalogName, getLiquibaseSchemaName, getLiquibaseTablespaceName, getName, getObjectQuotingStrategy, getOutputDefaultCatalog, getOutputDefaultSchema, getQuotingEndCharacter, getQuotingEndReplacement, getQuotingStartCharacter, getRanChangeSet, getRanChangeSetList, getRanDate, getRunStatus, getSchemaFromJdbcInfo, getSystemSchema, getSystemTables, getTimeLiteral, getViewDefinition, isAutoCommit, isCaseSensitive, isCurrentTimeFunction, isDateOnly, isDateTime, isDefaultCatalog, isDefaultSchema, isFunction, isLiquibaseObject, isSafeToRunUpdate, isSystemView, isTimeOnly, isTimestamp, jdbcCallsCatalogsSchemas, markChangeSetExecStatus, mustQuoteObjectName, parseDate, quoteObject, removeRanStatus, requiresExplicitNullForColumns, requiresPassword, requiresUsername, resetInternalState, saveRollbackStatement, saveStatements, set, setAutoCommit, setCanCacheLiquibaseTableInfo, setCaseSensitive, setCurrentDateTimeFunction, setDatabaseChangeLogLockTableName, setDatabaseChangeLogTableName, setDefaultSchemaName, setLiquibaseCatalogName, setLiquibaseSchemaName, setLiquibaseTablespaceName, setObjectQuotingStrategy, setOutputDefaultCatalog, setOutputDefaultSchema, startsWithNumeric, supportsAutoIncrement, supportsBatchUpdates, supportsCatalogs, supportsDropTableCascadeConstraints, supportsForeignKeyDisable, supportsNotNullConstraintNames, supportsPrimaryKeyNames, supportsRestrictForeignKeys, supportsSchemas, tag, toString, unescapeDataTypeString, validate
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface liquibase.database.Database
getDisplayName
-
-
-
-
Method Detail
-
getPriority
public int getPriority()
- Specified by:
getPriorityin interfacePrioritizedService- Overrides:
getPriorityin classPostgresDatabase
-
getShortName
public String getShortName()
Description copied from interface:DatabaseReturns an all-lower-case short name of the product. Used for end-user selecting of database type such as the DBMS precondition.- Specified by:
getShortNamein interfaceDatabase- Overrides:
getShortNamein classPostgresDatabase
-
getDefaultDatabaseProductName
protected String getDefaultDatabaseProductName()
- Overrides:
getDefaultDatabaseProductNamein classPostgresDatabase
-
getDatabaseMajorVersion
public int getDatabaseMajorVersion() throws DatabaseException- Specified by:
getDatabaseMajorVersionin interfaceDatabase- Overrides:
getDatabaseMajorVersionin classAbstractJdbcDatabase- Throws:
DatabaseException
-
getDatabaseMinorVersion
public int getDatabaseMinorVersion() throws DatabaseException- Specified by:
getDatabaseMinorVersionin interfaceDatabase- Overrides:
getDatabaseMinorVersionin classAbstractJdbcDatabase- Throws:
DatabaseException
-
isCorrectDatabaseImplementation
public boolean isCorrectDatabaseImplementation(DatabaseConnection conn) throws DatabaseException
Description copied from interface:DatabaseIs this AbstractDatabase subclass the correct one to use for the given connection.- Specified by:
isCorrectDatabaseImplementationin interfaceDatabase- Overrides:
isCorrectDatabaseImplementationin classPostgresDatabase- Throws:
DatabaseException
-
getDefaultPort
public Integer getDefaultPort()
- Specified by:
getDefaultPortin interfaceDatabase- Overrides:
getDefaultPortin classPostgresDatabase
-
supportsInitiallyDeferrableColumns
public boolean supportsInitiallyDeferrableColumns()
Description copied from interface:DatabaseReturns whether this database support initially deferrable columns.- Specified by:
supportsInitiallyDeferrableColumnsin interfaceDatabase- Overrides:
supportsInitiallyDeferrableColumnsin classPostgresDatabase
-
supportsTablespaces
public boolean supportsTablespaces()
- Specified by:
supportsTablespacesin interfaceDatabase- Overrides:
supportsTablespacesin classPostgresDatabase
-
supportsDDLInTransaction
public boolean supportsDDLInTransaction()
Description copied from class:AbstractJdbcDatabaseDetermines if the database supports DDL within a transaction or not.- Specified by:
supportsDDLInTransactionin interfaceDatabase- Overrides:
supportsDDLInTransactionin classAbstractJdbcDatabase- Returns:
- True if the database supports DDL within a transaction, otherwise false.
-
setConnection
public void setConnection(DatabaseConnection conn)
- Specified by:
setConnectionin interfaceDatabase- Overrides:
setConnectionin classPostgresDatabase
-
useSerialDatatypes
public boolean useSerialDatatypes()
Description copied from class:PostgresDatabaseShould the database use "serial" datatypes vs. "generated by default as identity"- Overrides:
useSerialDatatypesin classPostgresDatabase
-
-