|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.ddlutils.platform.SqlBuilder
org.apache.ddlutils.platform.mssql.MSSqlBuilder
The SQL Builder for the Microsoft SQL Server.
| Field Summary |
| Fields inherited from class org.apache.ddlutils.platform.SqlBuilder |
_log, SIZE_PLACEHOLDER |
| Constructor Summary | |
MSSqlBuilder(PlatformInfo info)
Creates a new builder instance. |
|
| Method Summary | |
protected void |
alterTable(Database currentModel,
Table currentTable,
Database desiredModel,
Table desiredTable,
boolean doDrops,
boolean modifyColumns)
Alters the given currently existing table object to match the given desired table object. |
void |
createTable(Database database,
Table table,
Map parameters)
Outputs the DDL to create the table along with any non-external constraints as well as with external primary keys and indices (but not foreign keys). |
void |
dropExternalForeignKeys(Table table)
Creates external foreignkey drop statements. |
void |
dropTable(Table table)
Outputs the DDL to drop the table. |
String |
getDeleteSql(Table table,
Map pkValues,
boolean genPlaceholders)
Creates the SQL for deleting an object from the specified table. If values are given then a concrete delete statement is created, otherwise an delete statement usable in a prepared statement is build. |
String |
getInsertSql(Table table,
Map columnValues,
boolean genPlaceholders)
Creates the SQL for inserting an object into the specified table. If values are given then a concrete insert statement is created, otherwise an insert statement usable in a prepared statement is build. |
protected String |
getNativeDefaultValue(Column column)
Returns the native default value for the column. |
String |
getUpdateSql(Table table,
Map columnValues,
boolean genPlaceholders)
Creates the SQL for updating an object in the specified table. If values are given then a concrete update statement is created, otherwise an update statement usable in a prepared statement is build. |
void |
writeColumnAlterStmt(Table table,
Column column,
boolean isNewColumn)
Generates the alter statement to add or modify a single column on a table. |
protected void |
writeColumnAutoIncrementStmt(Table table,
Column column)
Prints that the column is an auto increment column. |
protected void |
writeExternalForeignKeyDropStmt(Table table,
ForeignKey foreignKey)
Generates the statement to drop a foreignkey constraint from the database using an alter table statement. |
void |
writeExternalIndexDropStmt(Table table,
Index index)
Generates the statement to drop a non-embedded index from the database. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public MSSqlBuilder(PlatformInfo info)
info - The platform info| Method Detail |
public void createTable(Database database,
Table table,
Map parameters)
throws IOException
createTable in class SqlBuilderdatabase - The database modeltable - The tableparameters - Additional platform-specific parameters for the table creation
IOException
protected void alterTable(Database currentModel,
Table currentTable,
Database desiredModel,
Table desiredTable,
boolean doDrops,
boolean modifyColumns)
throws IOException
alterTable in class SqlBuildercurrentModel - The current modelcurrentTable - The current table definitiondesiredModel - The desired modeldesiredTable - The desired table definitiondoDrops - Whether columns and indexes should be dropped if not in the
new schemamodifyColumns - Whether columns should be altered for datatype, size as required
IOException
public void dropTable(Table table)
throws IOException
dropTable in class SqlBuildertable - The table to drop
IOException
public void dropExternalForeignKeys(Table table)
throws IOException
dropExternalForeignKeys in class SqlBuildertable - The table
IOExceptionprotected String getNativeDefaultValue(Column column)
getNativeDefaultValue in class SqlBuildercolumn - The column
protected void writeColumnAutoIncrementStmt(Table table,
Column column)
throws IOException
writeColumnAutoIncrementStmt in class SqlBuildertable - The tablecolumn - The column
IOException
public void writeExternalIndexDropStmt(Table table,
Index index)
throws IOException
writeExternalIndexDropStmt in class SqlBuildertable - The table the index is onindex - The index to drop
IOException
public void writeColumnAlterStmt(Table table,
Column column,
boolean isNewColumn)
throws IOException
writeColumnAlterStmt in class SqlBuildertable - The table the index is oncolumn - The column to dropisNewColumn - Whether the column should be added
IOException
protected void writeExternalForeignKeyDropStmt(Table table,
ForeignKey foreignKey)
throws IOException
writeExternalForeignKeyDropStmt in class SqlBuildertable - The tableforeignKey - The foreign key
IOException
public String getDeleteSql(Table table,
Map pkValues,
boolean genPlaceholders)
getDeleteSql in class SqlBuildertable - The tablepkValues - The primary key values indexed by the column names, can be emptygenPlaceholders - Whether to generate value placeholders for a
prepared statement
public String getInsertSql(Table table,
Map columnValues,
boolean genPlaceholders)
getInsertSql in class SqlBuildertable - The tablecolumnValues - The columns values indexed by the column namesgenPlaceholders - Whether to generate value placeholders for a
prepared statement
public String getUpdateSql(Table table,
Map columnValues,
boolean genPlaceholders)
getUpdateSql in class SqlBuildertable - The tablecolumnValues - Contains the values for the columns to update, and should also
contain the primary key values to identify the object to update
in case genPlaceholders is falsegenPlaceholders - Whether to generate value placeholders for a
prepared statement (both for the pk values and the object values)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||