Top Description Fields Constructors Methods
liquibase.database.core

public Class SybaseDatabase

extends AbstractJdbcDatabase
Class Inheritance
Imports
liquibase.CatalogAndSchema, .Scope, liquibase.database.AbstractJdbcDatabase, .DatabaseConnection, liquibase.exception.DatabaseException, liquibase.executor.Executor, .ExecutorService, liquibase.statement.SqlStatement, liquibase.statement.core.GetViewDefinitionStatement, .RawSqlStatement, liquibase.structure.DatabaseObject, liquibase.structure.core.Column, .Table, .View, liquibase.util.StringUtil, java.math.BigInteger, java.util.HashSet, .List, .Set

Encapsulates Sybase ASE database support.

Field Summary

Modifier and TypeField and Description
public static final String
protected Set<String>
Inherited from liquibase.database.AbstractJdbcDatabase:
caseSensitivecurrentDateTimeFunctiondateFunctionsdefaultAutoIncrementBydefaultAutoIncrementStartWithdefaultCatalogNamedefaultSchemaNamequotingStrategysequenceCurrentValueFunctionsequenceNextValueFunctionunmodifiableDataTypesunquotedObjectsAreUppercased

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public String
protected boolean
protected boolean
public String
protected String
public String
getConcatSql(String... values)

Overrides liquibase.database.AbstractJdbcDatabase.getConcatSql.

Implements liquibase.database.Database.getConcatSql.

Returns SQL to concat the passed values.

protected SqlStatement
getConnectionSchemaNameCallStatement()

Overrides liquibase.database.AbstractJdbcDatabase.getConnectionSchemaNameCallStatement.

Used to obtain the connection schema name through a statement Override this method to change the statement.

public int
public int
protected String
public String
getDefaultDriver(String url)

Implements liquibase.database.Database.getDefaultDriver.

If this database understands the given url, return the default driver class name.

public Integer
public int
protected String
protected String
public String
getShortName()

Implements liquibase.database.Database.getShortName.

Returns an all-lower-case short name of the product.

public Set<String>
getSystemViews()

Overrides liquibase.database.AbstractJdbcDatabase.getSystemViews.

Returns system (undroppable) views.

public String
public boolean
isCorrectDatabaseImplementation(DatabaseConnection conn)

Implements liquibase.database.Database.isCorrectDatabaseImplementation.

Is this AbstractDatabase subclass the correct one to use for the given connection.

pack-priv boolean
isSybaseProductName(String dbProductName)

public boolean
protected boolean
public String
public boolean
public boolean
supportsDDLInTransaction()

Overrides liquibase.database.AbstractJdbcDatabase.supportsDDLInTransaction.

Implements liquibase.database.Database.supportsDDLInTransaction.

Sybase does not support DDL and meta data in transactions properly, as such we turn off the commit and turn on auto commit.

public boolean
public boolean
supportsInitiallyDeferrableColumns()

Implements liquibase.database.Database.supportsInitiallyDeferrableColumns.

Returns whether this database support initially deferrable columns.

public boolean
public boolean
public boolean
Inherited from liquibase.database.AbstractJdbcDatabase:
addReservedWordscanCreateChangeLogTableclosecommitcorrectObjectNamecorrectSchemacorrectSchemacreatesIndexesForForeignKeysdataTypeIsNotModifiabledisableForeignKeyChecksdoesTagExistdropDatabaseObjectsenableForeignKeyChecksequalsescapeColumnNameescapeColumnNameescapeColumnNameListescapeConstraintNameescapeDataTypeNameescapeObjectNameescapeObjectNameescapeSequenceNameescapeStringForDatabaseescapeTableNameescapeViewNameexecuteexecuteRollbackStatementsexecuteRollbackStatementsexecuteStatementsfilterRollbackVisitorsgenerateDatabaseFunctionValuegeneratePrimaryKeyNamegetgetAutoCommitModegetAutoIncrementByClausegetAutoIncrementClausegetAutoIncrementClausegetAutoIncrementClosinggetAutoIncrementOpeninggetAutoIncrementStartWithClausegetConnectiongetConnectionCatalogNamegetConnectionSchemaNamegetContainingObjectsgetCurrentDateTimeFunctiongetDatabaseChangeLogLockTableNamegetDatabaseChangeLogTableNamegetDatabaseProductNamegetDatabaseProductVersiongetDataTypeMaxParametersgetDateFunctionsgetDateLiteralgetDateLiteralgetDateLiteralgetDateTimeLiteralgetDefaultCatalogNamegetDefaultFractionalDigitsForTimestampgetDefaultScaleForNativeDataTypegetDefaultSchemagetDefaultSchemaNamegetFetchSizegetJdbcCatalogNamegetJdbcCatalogNamegetJdbcSchemaNamegetJdbcSchemaNamegetLineCommentgetLiquibaseCatalogNamegetLiquibaseSchemaNamegetLiquibaseTablespaceNamegetMaxFractionalDigitsForTimestampgetNamegetObjectQuotingStrategygetOutputDefaultCataloggetOutputDefaultSchemagetQuotingEndReplacementgetRanChangeSetgetRanChangeSetListgetRanDategetRawDatabaseChangeLogLockTableNamegetRawDatabaseChangeLogTableNamegetRunStatusgetSchemaAndCatalogCasegetSchemaFromJdbcInfogetSystemSchemagetSystemTablesgetTimeLiteralhashCodeisAutoCommitisCaseSensitiveisCatalogOrSchemaTypeisCurrentTimeFunctionisDateOnlyisDateTimeisDefaultCatalogisDefaultSchemaisFunctionisLiquibaseObjectisReservedWordisSafeToRunUpdateisSystemViewisTimeOnlyisTimestampjdbcCallsCatalogsSchemasmarkChangeSetExecStatusparseDateremoveRanStatusrequiresPasswordrequiresUsernameresetInternalStaterollbacksaveRollbackStatementsaveStatementssetsetAutoCommitsetCanCacheLiquibaseTableInfosetCaseSensitivesetConnectionsetCurrentDateTimeFunctionsetDatabaseChangeLogLockTableNamesetDatabaseChangeLogTableNamesetDefaultCatalogNamesetDefaultSchemaNamesetLiquibaseCatalogNamesetLiquibaseSchemaNamesetLiquibaseTablespaceNamesetObjectQuotingStrategysetOutputDefaultCatalogsetOutputDefaultSchemastartsWithNumericsupportsAutoIncrementsupportsBatchUpdatessupportsCatalogInObjectNamesupportsCatalogssupportsForeignKeyDisablesupportsNotNullConstraintNamessupportsPrimaryKeyNamessupportsSchemastagtoStringunescapeDataTypeNameunescapeDataTypeStringvalidate

Field Detail

PRODUCT_NAMEback to summary
public static final String PRODUCT_NAME
systemTablesAndViewsback to summary
protected Set<String> systemTablesAndViews

Constructor Detail

SybaseDatabaseback to summary
public SybaseDatabase()

Method Detail

escapeIndexNameback to summary
public String escapeIndexName(String catalogName, String schemaName, String indexName)

Overrides liquibase.database.AbstractJdbcDatabase.escapeIndexName.

Implements liquibase.database.Database.escapeIndexName.

Annotations
@Override
generateAutoIncrementByback to summary
protected boolean generateAutoIncrementBy(BigInteger incrementBy)

Overrides liquibase.database.AbstractJdbcDatabase.generateAutoIncrementBy.

Annotations
@Override
generateAutoIncrementStartWithback to summary
protected boolean generateAutoIncrementStartWith(BigInteger startWith)

Overrides liquibase.database.AbstractJdbcDatabase.generateAutoIncrementStartWith.

Annotations
@Override
generateDefaultConstraintNameback to summary
public String generateDefaultConstraintName(String tableName, String columnName)
getAutoIncrementClauseback to summary
protected String getAutoIncrementClause()

Overrides liquibase.database.AbstractJdbcDatabase.getAutoIncrementClause.

Annotations
@Override
getConcatSqlback to summary
public String getConcatSql(String... values)

Overrides liquibase.database.AbstractJdbcDatabase.getConcatSql.

Implements liquibase.database.Database.getConcatSql.

Doc from liquibase.database.Database.getConcatSql.

Returns SQL to concat the passed values.

Annotations
@Override
getConnectionSchemaNameCallStatementback to summary
protected SqlStatement getConnectionSchemaNameCallStatement()

Overrides liquibase.database.AbstractJdbcDatabase.getConnectionSchemaNameCallStatement.

Doc from liquibase.database.AbstractJdbcDatabase.getConnectionSchemaNameCallStatement.

Used to obtain the connection schema name through a statement Override this method to change the statement. Only override this if getConnectionSchemaName is left unchanged or is using this method.

Annotations
@Override
getDatabaseMajorVersionback to summary
public int getDatabaseMajorVersion() throws DatabaseException

Overrides liquibase.database.AbstractJdbcDatabase.getDatabaseMajorVersion.

Implements liquibase.database.Database.getDatabaseMajorVersion.

Returns:int

the major version if supported, otherwise -1

Annotations
@Override
See Also
liquibase.database.AbstractJdbcDatabase#getDatabaseMajorVersion()
getDatabaseMinorVersionback to summary
public int getDatabaseMinorVersion() throws DatabaseException

Overrides liquibase.database.AbstractJdbcDatabase.getDatabaseMinorVersion.

Implements liquibase.database.Database.getDatabaseMinorVersion.

Returns:int

the minor version if supported, otherwise -1

Annotations
@Override
See Also
liquibase.database.AbstractJdbcDatabase#getDatabaseMinorVersion()
getDefaultDatabaseProductNameback to summary
protected String getDefaultDatabaseProductName()

Implements abstract liquibase.database.AbstractJdbcDatabase.getDefaultDatabaseProductName.

Annotations
@Override
getDefaultDriverback to summary
public String getDefaultDriver(String url)

Implements liquibase.database.Database.getDefaultDriver.

Doc from liquibase.database.Database.getDefaultDriver.

If this database understands the given url, return the default driver class name. Otherwise return null.

Annotations
@Override
getDefaultPortback to summary
public Integer getDefaultPort()

Implements liquibase.database.Database.getDefaultPort.

Annotations
@Override
getPriorityback to summary
public int getPriority()

Implements liquibase.servicelocator.PrioritizedService.getPriority.

Annotations
@Override
getQuotingEndCharacterback to summary
protected String getQuotingEndCharacter()

Overrides liquibase.database.AbstractJdbcDatabase.getQuotingEndCharacter.

Annotations
@Override
getQuotingStartCharacterback to summary
protected String getQuotingStartCharacter()

Overrides liquibase.database.AbstractJdbcDatabase.getQuotingStartCharacter.

Annotations
@Override
getShortNameback to summary
public String getShortName()

Implements liquibase.database.Database.getShortName.

Doc from liquibase.database.Database.getShortName.

Returns an all-lower-case short name of the product. Used for end-user selecting of database type such as the DBMS precondition.

Annotations
@Override
getSystemViewsback to summary
public Set<String> getSystemViews()

Overrides liquibase.database.AbstractJdbcDatabase.getSystemViews.

Doc from liquibase.database.AbstractJdbcDatabase.getSystemViews.

Returns system (undroppable) views.

Annotations
@Override
getViewDefinitionback to summary
public String getViewDefinition(CatalogAndSchema schema, String viewName) throws DatabaseException

Overrides liquibase.database.AbstractJdbcDatabase.getViewDefinition.

Implements liquibase.database.Database.getViewDefinition.

Annotations
@Override
isCorrectDatabaseImplementationback to summary
public boolean isCorrectDatabaseImplementation(DatabaseConnection conn) throws DatabaseException

Implements liquibase.database.Database.isCorrectDatabaseImplementation.

Doc from liquibase.database.Database.isCorrectDatabaseImplementation.

Is this AbstractDatabase subclass the correct one to use for the given connection.

Annotations
@Override
isSybaseProductNameback to summary
pack-priv boolean isSybaseProductName(String dbProductName)
isSystemObjectback to summary
public boolean isSystemObject(DatabaseObject example)

Overrides liquibase.database.AbstractJdbcDatabase.isSystemObject.

Implements liquibase.database.Database.isSystemObject.

Annotations
@Override
mustQuoteObjectNameback to summary
protected boolean mustQuoteObjectName(String objectName, Class<? extends DatabaseObject> objectType)

Overrides liquibase.database.AbstractJdbcDatabase.mustQuoteObjectName.

Annotations
@Override
quoteObjectback to summary
public String quoteObject(String objectName, Class<? extends DatabaseObject> objectType)

Overrides liquibase.database.AbstractJdbcDatabase.quoteObject.

Annotations
@Override
requiresExplicitNullForColumnsback to summary
public boolean requiresExplicitNullForColumns()

Overrides liquibase.database.AbstractJdbcDatabase.requiresExplicitNullForColumns.

Implements liquibase.database.Database.requiresExplicitNullForColumns.

Doc from liquibase.database.Database.requiresExplicitNullForColumns.

Does the database require explicit NULL for nullable columns?

Returns:boolean

true if the database behaves incorrectly if NULL is not explicitly specified, false if it behaves like any good RDBMS should.

Annotations
@Override
supportsDDLInTransactionback to summary
public boolean supportsDDLInTransaction()

Overrides liquibase.database.AbstractJdbcDatabase.supportsDDLInTransaction.

Implements liquibase.database.Database.supportsDDLInTransaction.

Sybase does not support DDL and meta data in transactions properly, as such we turn off the commit and turn on auto commit.

Returns:boolean

Doc from liquibase.database.AbstractJdbcDatabase.supportsDDLInTransaction.

True if the database supports DDL within a transaction, otherwise false.

Annotations
@Override
supportsDropTableCascadeConstraintsback to summary
public boolean supportsDropTableCascadeConstraints()

Overrides liquibase.database.AbstractJdbcDatabase.supportsDropTableCascadeConstraints.

Implements liquibase.database.Database.supportsDropTableCascadeConstraints.

Annotations
@Override
supportsInitiallyDeferrableColumnsback to summary
public boolean supportsInitiallyDeferrableColumns()

Implements liquibase.database.Database.supportsInitiallyDeferrableColumns.

Doc from liquibase.database.Database.supportsInitiallyDeferrableColumns.

Returns whether this database support initially deferrable columns.

Annotations
@Override
supportsRestrictForeignKeysback to summary
public boolean supportsRestrictForeignKeys()

Overrides liquibase.database.AbstractJdbcDatabase.supportsRestrictForeignKeys.

Implements liquibase.database.Database.supportsRestrictForeignKeys.

Annotations
@Override
supportsSequencesback to summary
public boolean supportsSequences()

Overrides liquibase.database.AbstractJdbcDatabase.supportsSequences.

Implements liquibase.database.Database.supportsSequences.

Doc from liquibase.database.AbstractJdbcDatabase.supportsSequences.

Does the database type support sequence.

Annotations
@Override
supportsTablespacesback to summary
public boolean supportsTablespaces()

Implements liquibase.database.Database.supportsTablespaces.

Annotations
@Override