public abstract class AutomaticScriptFactory
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static int |
MAX_DECIMAL |
static java.lang.Object |
NO_DEFAULT
Put this constant as default value for clob or blob and Oracle will not set default empty_clob()/empty_blob() for you.
|
Constructor and Description |
---|
AutomaticScriptFactory() |
Modifier and Type | Method and Description |
---|---|
protected abstract DatabaseSchema |
createSchema(boolean utf8DB,
int toVersion) |
protected abstract SchemaUpdateHints |
createUpdateHints(int fromVersion) |
void |
generateCreateScript(AbstractSQLGenerator generator,
SQLBatch batch,
boolean utf8DB,
int toVersion,
ScriptGenerationConfiguration configuration)
Generates script creating database structures to specified version
|
void |
generateLiveUpdateScript(SQLPalioConnector connector,
SQLBatch batch,
boolean utf8DB,
int fromVersion,
int toVersion,
ScriptGenerationConfiguration configuration)
Tries to generate script updating database structure from live version to specified one if database scanning supported.
|
void |
generateUpdateScript(AbstractSQLGenerator generator,
SQLBatch batch,
boolean utf8DB,
int fromVersion,
int toVersion,
ScriptGenerationConfiguration configuration)
Generates script updating database structures from one version to another
|
abstract void |
insertContent(SQLConnector connector,
int fromVersion)
This method fills created tables with content.
|
protected void |
insertOrUpdateIfExists(SQLConnector connector,
java.lang.String insert,
java.lang.String update,
java.lang.String checkSelect)
Calls insert or update depending on result of
checkSelect query. |
protected void |
insertOrUpdateIfExists(SQLConnector connector,
java.lang.String tableName,
java.lang.String idName,
java.lang.String idValue,
java.lang.String... otherColumns)
This method automatically generated states for select, insert and updates.
|
public static final int MAX_DECIMAL
public static final java.lang.Object NO_DEFAULT
protected abstract SchemaUpdateHints createUpdateHints(int fromVersion)
protected abstract DatabaseSchema createSchema(boolean utf8DB, int toVersion)
public abstract void insertContent(SQLConnector connector, int fromVersion) throws PalioException
insertOrUpdateIfExists
methods to achieve
this result.PalioException
protected void insertOrUpdateIfExists(SQLConnector connector, java.lang.String insert, java.lang.String update, java.lang.String checkSelect) throws PalioException
checkSelect
query.PalioException
protected void insertOrUpdateIfExists(SQLConnector connector, java.lang.String tableName, java.lang.String idName, java.lang.String idValue, java.lang.String... otherColumns) throws PalioException
PalioException
public void generateCreateScript(AbstractSQLGenerator generator, SQLBatch batch, boolean utf8DB, int toVersion, ScriptGenerationConfiguration configuration)
public void generateUpdateScript(AbstractSQLGenerator generator, SQLBatch batch, boolean utf8DB, int fromVersion, int toVersion, ScriptGenerationConfiguration configuration)
public void generateLiveUpdateScript(SQLPalioConnector connector, SQLBatch batch, boolean utf8DB, int fromVersion, int toVersion, ScriptGenerationConfiguration configuration) throws PalioException
PalioException
- if error occured during database scanning