Package liquibase.database.core
Class SybaseASADatabase
java.lang.Object
liquibase.database.AbstractJdbcDatabase
liquibase.database.core.SybaseASADatabase
- All Implemented Interfaces:
AutoCloseable,Database,PrioritizedService
Support for SAP (formerly: Sybase) AS (Adapter Server) Anywhere embedded/mobile database.
-
Field Summary
Fields inherited from class liquibase.database.AbstractJdbcDatabase
caseSensitive, currentDateTimeFunction, dateFunctions, defaultAutoIncrementBy, defaultAutoIncrementStartWith, defaultCatalogName, defaultSchemaName, quotingStrategy, sequenceCurrentValueFunction, sequenceNextValueFunction, unmodifiableDataTypes, unquotedObjectsAreUppercasedFields inherited from interface liquibase.database.Database
COMPLETE_SQL_SCOPE_KEY, IGNORE_MISSING_REFERENCES_KEYFields inherited from interface liquibase.servicelocator.PrioritizedService
COMPARATOR, PRIORITY_DATABASE, PRIORITY_DEFAULT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAllows the database to perform actions after an update is finished, i.e. after the last change of a changelog was applied.escapeIndexName(String catalogName, String schemaName, String indexName) protected booleangenerateAutoIncrementBy(BigInteger incrementBy) protected booleangenerateAutoIncrementStartWith(BigInteger startWith) protected Stringprotected StringOverwrite this method to get the default schema name for the connection.protected StringgetDefaultDriver(String url) If this database understands the given url, return the default driver class name.getJdbcCatalogName(CatalogAndSchema schema) intMost relational databases support 9 fractional digits, and subclasses must overwrite this method if they support less than that.intReturns an all-lower-case short name of the product.Returns system (undroppable) views.getViewDefinition(CatalogAndSchema schema, String viewName) booleanIs this AbstractDatabase subclass the correct one to use for the given connection.booleanDoes the database require explicit NULL for nullable columns?voidsetAutoCommit(boolean b) voidbooleanbooleanReturns whether this database support initially deferrable columns.booleanDoes the database type support sequence.booleanMethods inherited from class liquibase.database.AbstractJdbcDatabase
addReservedWords, canCreateChangeLogTable, close, commit, correctObjectName, correctSchema, correctSchema, createsIndexesForForeignKeys, dataTypeIsNotModifiable, disableForeignKeyChecks, doesTagExist, dropDatabaseObjects, enableForeignKeyChecks, equals, escapeColumnName, escapeColumnName, escapeColumnNameList, escapeConstraintName, escapeDataTypeName, escapeObjectName, escapeObjectName, escapeSequenceName, escapeStringForDatabase, escapeTableName, escapeViewName, execute, executeRollbackStatements, executeRollbackStatements, executeStatements, filterRollbackVisitors, generateDatabaseFunctionValue, generatePrimaryKeyName, get, getAutoCommitMode, getAutoIncrementByClause, getAutoIncrementClause, getAutoIncrementClause, getAutoIncrementClosing, getAutoIncrementOpening, getAutoIncrementStartWithClause, getConcatSql, getConnection, getConnectionCatalogName, getConnectionSchemaNameCallStatement, getContainingObjects, getCurrentDateTimeFunction, getDatabaseChangeLogLockTableName, getDatabaseChangeLogTableName, getDatabaseMajorVersion, getDatabaseMinorVersion, getDatabaseProductName, getDatabaseProductVersion, getDataTypeMaxParameters, getDateFunctions, getDateLiteral, getDateLiteral, getDateLiteral, getDateTimeLiteral, getDefaultFractionalDigitsForTimestamp, getDefaultScaleForNativeDataType, getDefaultSchema, getDefaultSchemaName, getFetchSize, getJdbcCatalogName, getJdbcSchemaName, getJdbcSchemaName, getLineComment, getLiquibaseCatalogName, getLiquibaseSchemaName, getLiquibaseTablespaceName, getName, getObjectQuotingStrategy, getOutputDefaultCatalog, getOutputDefaultSchema, getQuotingEndCharacter, getQuotingEndReplacement, getQuotingStartCharacter, getRanChangeSet, getRanChangeSetList, getRanDate, getRawDatabaseChangeLogLockTableName, getRawDatabaseChangeLogTableName, getRunStatus, getSchemaAndCatalogCase, getSchemaFromJdbcInfo, getSystemSchema, getSystemTables, getTimeLiteral, hashCode, isAutoCommit, isCaseSensitive, isCatalogOrSchemaType, isCurrentTimeFunction, isDateOnly, isDateTime, isDefaultCatalog, isDefaultSchema, isFunction, isLiquibaseObject, isReservedWord, isSafeToRunUpdate, isSystemObject, isSystemView, isTimeOnly, isTimestamp, jdbcCallsCatalogsSchemas, markChangeSetExecStatus, mustQuoteObjectName, parseDate, quoteObject, removeRanStatus, requiresPassword, requiresUsername, resetInternalState, rollback, saveRollbackStatement, saveStatements, set, setCanCacheLiquibaseTableInfo, setCaseSensitive, setCurrentDateTimeFunction, setDatabaseChangeLogLockTableName, setDatabaseChangeLogTableName, setDefaultCatalogName, setDefaultSchemaName, setLiquibaseCatalogName, setLiquibaseSchemaName, setLiquibaseTablespaceName, setObjectQuotingStrategy, setOutputDefaultCatalog, setOutputDefaultSchema, setPreviousAutoCommit, startsWithNumeric, supportsAutoIncrement, supportsBatchUpdates, supportsCatalogInObjectName, supportsCatalogs, supportsDDLInTransaction, supportsForeignKeyDisable, supportsNotNullConstraintNames, supportsPrimaryKeyNames, supportsRestrictForeignKeys, supportsSchemas, tag, toString, unescapeDataTypeName, unescapeDataTypeString, validateMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface liquibase.database.Database
addCompleteSqlToScope, checkDatabaseConnection, dropDatabaseObjects, escapeForLike, failOnDefferable, generateConnectCommandSuccessMessage, getDisplayName, supports, supportsCreateIfNotExists, supportsDatabaseChangeLogHistory, temporarilySetObjectQuotingStrategy
-
Constructor Details
-
SybaseASADatabase
public SybaseASADatabase()
-
-
Method Details
-
getPriority
public int getPriority() -
getDefaultDriver
Description copied from interface:DatabaseIf this database understands the given url, return the default driver class name. Otherwise return null. -
getDefaultPort
-
getDefaultDatabaseProductName
- Specified by:
getDefaultDatabaseProductNamein classAbstractJdbcDatabase
-
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. -
isCorrectDatabaseImplementation
Description copied from interface:DatabaseIs this AbstractDatabase subclass the correct one to use for the given connection.- Throws:
DatabaseException
-
getDefaultCatalogName
- Specified by:
getDefaultCatalogNamein interfaceDatabase- Overrides:
getDefaultCatalogNamein classAbstractJdbcDatabase
-
getConnectionSchemaName
Description copied from class:AbstractJdbcDatabaseOverwrite this method to get the default schema name for the connection. If you only need to change the statement that obtains the current schema then override- Overrides:
getConnectionSchemaNamein classAbstractJdbcDatabase- See Also:
-
getViewDefinition
- Specified by:
getViewDefinitionin interfaceDatabase- Overrides:
getViewDefinitionin classAbstractJdbcDatabase- Throws:
DatabaseException
-
supportsInitiallyDeferrableColumns
public boolean supportsInitiallyDeferrableColumns()Description copied from interface:DatabaseReturns whether this database support initially deferrable columns. -
supportsDropTableCascadeConstraints
public boolean supportsDropTableCascadeConstraints()- Specified by:
supportsDropTableCascadeConstraintsin interfaceDatabase- Overrides:
supportsDropTableCascadeConstraintsin classAbstractJdbcDatabase
-
supportsTablespaces
public boolean supportsTablespaces() -
getSystemViews
Description copied from class:AbstractJdbcDatabaseReturns system (undroppable) views.- Overrides:
getSystemViewsin classAbstractJdbcDatabase
-
supportsSequences
public boolean supportsSequences()Description copied from class:AbstractJdbcDatabaseDoes the database type support sequence.- Specified by:
supportsSequencesin interfaceDatabase- Overrides:
supportsSequencesin classAbstractJdbcDatabase
-
getAutoIncrementClause
- Overrides:
getAutoIncrementClausein classAbstractJdbcDatabase
-
generateAutoIncrementStartWith
- Overrides:
generateAutoIncrementStartWithin classAbstractJdbcDatabase
-
generateAutoIncrementBy
- Overrides:
generateAutoIncrementByin classAbstractJdbcDatabase
-
setAutoCommit
- Specified by:
setAutoCommitin interfaceDatabase- Overrides:
setAutoCommitin classAbstractJdbcDatabase- Throws:
DatabaseException
-
getJdbcCatalogName
- Overrides:
getJdbcCatalogNamein classAbstractJdbcDatabase
-
escapeIndexName
- Specified by:
escapeIndexNamein interfaceDatabase- Overrides:
escapeIndexNamein classAbstractJdbcDatabase
-
setConnection
- Specified by:
setConnectionin interfaceDatabase- Overrides:
setConnectionin classAbstractJdbcDatabase
-
requiresExplicitNullForColumns
public boolean requiresExplicitNullForColumns()Description copied from interface:DatabaseDoes the database require explicit NULL for nullable columns?- Specified by:
requiresExplicitNullForColumnsin interfaceDatabase- Overrides:
requiresExplicitNullForColumnsin classAbstractJdbcDatabase- Returns:
- true if the database behaves incorrectly if NULL is not explicitly specified, false if it behaves like any good RDBMS should.
-
getMaxFractionalDigitsForTimestamp
public int getMaxFractionalDigitsForTimestamp()Description copied from class:AbstractJdbcDatabaseMost relational databases support 9 fractional digits, and subclasses must overwrite this method if they support less than that.- Specified by:
getMaxFractionalDigitsForTimestampin interfaceDatabase- Overrides:
getMaxFractionalDigitsForTimestampin classAbstractJdbcDatabase- Returns:
- the maximum number of supported fractional digits in TIMESTAMP columns
-
afterUpdate
Description copied from interface:DatabaseAllows the database to perform actions after an update is finished, i.e. after the last change of a changelog was applied.- Throws:
LiquibaseException
-