com.googlecode.flyway.core.dbsupport.mysql
Class MySQLDbSupport

java.lang.Object
  extended by com.googlecode.flyway.core.dbsupport.mysql.MySQLDbSupport
All Implemented Interfaces:
DbSupport

public class MySQLDbSupport
extends java.lang.Object
implements DbSupport

Mysql-specific support.


Constructor Summary
MySQLDbSupport()
           
 
Method Summary
 boolean columnExists(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate, java.lang.String table, java.lang.String column)
          Checks whether this column is already present in this table in the database.
 SqlScript createCleanScript(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
          Creates a new sql script which clean the current schema, by dropping all objects.
 SqlScript createSqlScript(java.lang.String sqlScriptSource, PlaceholderReplacer placeholderReplacer)
          Creates a new sql script from this resource with these placeholders to replace.
 java.lang.String getCurrentSchema(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
          Retrieves the current schema.
 java.lang.String getCurrentUserFunction()
           
 java.lang.String getScriptLocation()
          Returns the location on the classpath where the scripts for this database reside.
 boolean supportsDatabase(java.lang.String databaseProductName)
          Checks whether this DbSupport class supports the database with this product name.
 boolean supportsDdlTransactions()
          Checks whether ddl transactions are supported for this database.
 boolean supportsLocking()
          Checks whether locking using select ... for update is supported for this database.
 boolean tableExists(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate, java.lang.String table)
          Checks whether this table is already present in the database.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MySQLDbSupport

public MySQLDbSupport()
Method Detail

getScriptLocation

public java.lang.String getScriptLocation()
Description copied from interface: DbSupport
Returns the location on the classpath where the scripts for this database reside.

Specified by:
getScriptLocation in interface DbSupport
Returns:
The folder on the classpath, including a trailing slash.

getCurrentUserFunction

public java.lang.String getCurrentUserFunction()
Specified by:
getCurrentUserFunction in interface DbSupport
Returns:
The database function that returns the current user.

getCurrentSchema

public java.lang.String getCurrentSchema(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
Description copied from interface: DbSupport
Retrieves the current schema.

Specified by:
getCurrentSchema in interface DbSupport
Parameters:
jdbcTemplate - The jdbc template used for querying the database.
Returns:
The current schema for this connection.

supportsDatabase

public boolean supportsDatabase(java.lang.String databaseProductName)
Description copied from interface: DbSupport
Checks whether this DbSupport class supports the database with this product name.

Specified by:
supportsDatabase in interface DbSupport
Parameters:
databaseProductName - The name of the database.
Returns:
true if the database is supported, false if not.

tableExists

public boolean tableExists(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
                           java.lang.String table)
Description copied from interface: DbSupport
Checks whether this table is already present in the database.

Specified by:
tableExists in interface DbSupport
Parameters:
jdbcTemplate - The jdbc template used for querying the database.
table - The table to look for.
Returns:
true if the table exists, false if it doesn't.

columnExists

public boolean columnExists(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate,
                            java.lang.String table,
                            java.lang.String column)
Description copied from interface: DbSupport
Checks whether this column is already present in this table in the database.

Specified by:
columnExists in interface DbSupport
Parameters:
jdbcTemplate - The jdbc template used for querying the database.
table - The table to look for.
column - The column to look for.
Returns:
true if the table exists, false if it doesn't.

supportsDdlTransactions

public boolean supportsDdlTransactions()
Description copied from interface: DbSupport
Checks whether ddl transactions are supported for this database.

Specified by:
supportsDdlTransactions in interface DbSupport
Returns:
true if ddl transactions are supported, false if not.

supportsLocking

public boolean supportsLocking()
Description copied from interface: DbSupport
Checks whether locking using select ... for update is supported for this database.

Specified by:
supportsLocking in interface DbSupport
Returns:
true if locking is supported, false if not.

createSqlScript

public SqlScript createSqlScript(java.lang.String sqlScriptSource,
                                 PlaceholderReplacer placeholderReplacer)
Description copied from interface: DbSupport
Creates a new sql script from this resource with these placeholders to replace.

Specified by:
createSqlScript in interface DbSupport
Parameters:
sqlScriptSource - The sql script as a text block with all placeholders still present.
placeholderReplacer - The placeholder replacer to apply to sql migration scripts.
Returns:
A new sql script, containing the statements from this resource, with all placeholders replaced.

createCleanScript

public SqlScript createCleanScript(org.springframework.jdbc.core.JdbcTemplate jdbcTemplate)
Description copied from interface: DbSupport
Creates a new sql script which clean the current schema, by dropping all objects.

Specified by:
createCleanScript in interface DbSupport
Parameters:
jdbcTemplate - The jdbc template used for querying the database.
Returns:
A new sql script, containing drop statements for all objects


Copyright © 2010. All Rights Reserved.