Class SybaseASEDatabase
- java.lang.Object
-
- migratedb.core.internal.database.base.BaseDatabase<SybaseASEConnection>
-
- migratedb.core.internal.database.sybasease.SybaseASEDatabase
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Database<SybaseASEConnection>
public class SybaseASEDatabase extends BaseDatabase<SybaseASEConnection>
-
-
Field Summary
-
Fields inherited from class migratedb.core.internal.database.base.BaseDatabase
configuration, databaseType, jdbcConnectionFactory, jdbcMetaData, jdbcTemplate, rawMainJdbcConnection
-
-
Constructor Summary
Constructors Constructor Description SybaseASEDatabase(Configuration configuration, JdbcConnectionFactory jdbcConnectionFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancatalogIsSchema()protected SybaseASEConnectiondoGetConnection(Connection connection)Retrieves a MigrateDB Connection for this JDBC connection.protected StringdoGetCurrentUser()voidensureSupported()Ensure MigrateDB supports this version of this database.StringgetBooleanFalse()StringgetBooleanTrue()StringgetCloseQuote()DelimitergetDefaultDelimiter()StringgetOpenQuote()StringgetRawCreateScript(Table<?,?> table, boolean baseline)booleansupportsChangingCurrentSchema()booleansupportsDdlTransactions()booleansupportsEmptyMigrationDescription()booleansupportsMultiStatementTransactions()Multi statement transaction support is dependent on the 'ddl in tran' option being set.-
Methods inherited from class migratedb.core.internal.database.base.BaseDatabase
cleanPostSchemas, cleanPreSchemas, close, computeVersionDisplayName, determineVersion, doCleanPostSchemas, doCleanPreSchemas, doGetCatalog, doQuote, ensureDatabaseIsRecentEnough, getAllSchemas, getBaselineStatement, getCatalog, getCreateScript, getCurrentUser, getDatabaseType, getEscapedQuote, getInsertStatement, getInstalledBy, getJdbcMetaData, getMainConnection, getMigrationConnection, getSelectStatement, getVersion, quote, recommendMigrateDbUpgradeIfNecessary, recommendMigrateDbUpgradeIfNecessaryForMajorVersion, unQuote, useSingleConnection
-
-
-
-
Constructor Detail
-
SybaseASEDatabase
public SybaseASEDatabase(Configuration configuration, JdbcConnectionFactory jdbcConnectionFactory)
-
-
Method Detail
-
doGetConnection
protected SybaseASEConnection doGetConnection(Connection connection)
Description copied from class:BaseDatabaseRetrieves a MigrateDB Connection for this JDBC connection.- Specified by:
doGetConnectionin classBaseDatabase<SybaseASEConnection>
-
ensureSupported
public void ensureSupported()
Description copied from interface:DatabaseEnsure MigrateDB supports this version of this database.
-
supportsEmptyMigrationDescription
public boolean supportsEmptyMigrationDescription()
- Specified by:
supportsEmptyMigrationDescriptionin interfaceDatabase<SybaseASEConnection>- Overrides:
supportsEmptyMigrationDescriptionin classBaseDatabase<SybaseASEConnection>
-
getDefaultDelimiter
public Delimiter getDefaultDelimiter()
- Specified by:
getDefaultDelimiterin interfaceDatabase<SybaseASEConnection>- Overrides:
getDefaultDelimiterin classBaseDatabase<SybaseASEConnection>
-
doGetCurrentUser
protected String doGetCurrentUser() throws SQLException
- Overrides:
doGetCurrentUserin classBaseDatabase<SybaseASEConnection>- Throws:
SQLException
-
supportsDdlTransactions
public boolean supportsDdlTransactions()
-
supportsChangingCurrentSchema
public boolean supportsChangingCurrentSchema()
-
getBooleanTrue
public String getBooleanTrue()
- Returns:
- The representation of the value
truein a boolean column.
-
getBooleanFalse
public String getBooleanFalse()
- Returns:
- The representation of the value
falsein a boolean column.
-
getOpenQuote
public String getOpenQuote()
- Overrides:
getOpenQuotein classBaseDatabase<SybaseASEConnection>
-
getCloseQuote
public String getCloseQuote()
- Overrides:
getCloseQuotein classBaseDatabase<SybaseASEConnection>
-
catalogIsSchema
public boolean catalogIsSchema()
- Returns:
trueif this database uses a catalog to represent a schema, orfalseif a schema is simply a schema.
-
supportsMultiStatementTransactions
public boolean supportsMultiStatementTransactions()
Multi statement transaction support is dependent on the 'ddl in tran' option being set. However, setting 'ddl in tran' doesn't necessarily mean that multi-statement transactions are supported. Also, ddl in tran can change during execution for unknown reasons. Therefore, as a best guess: - When this method is called, check ddl in tran - If ddl in tran is true, assume support for multi statement transactions forever more - Never check ddl in tran again - If ddl in tran is false, return false - Check ddl in tran again on the next call- Specified by:
supportsMultiStatementTransactionsin interfaceDatabase<SybaseASEConnection>- Overrides:
supportsMultiStatementTransactionsin classBaseDatabase<SybaseASEConnection>
-
-