public class MSSqlDialect extends SqlDialect
COMMON_SEQ_TABLE_KEY, DEFAULT_SCHEMA_SYMBOL, NEW_LINE_SEPARATOR, ormHandler| Constructor and Description |
|---|
MSSqlDialect() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
createInnerSelectPart(Query query,
Appendable out)
Inner select select with under aliases assignment and order columns (have to propagate to outer select)
|
protected void |
createOuterPart(String innerSelect,
Query query,
Appendable out)
Outer part of select with sorting
|
protected void |
createRowOrderPart(Query query,
Appendable out,
boolean asOrderAlias)
Creating RowNumber column
|
protected void |
createWherePart(Query query,
Appendable out)
Where clause for inner select
|
protected String |
getColumnType(MetaColumn column)
Returns a database column type
|
String |
getJdbcDriver()
Returns a JDBC driver class name.
|
String |
getJdbcUrl()
Returns a default JDBC URL
|
boolean |
isCatalog()
Does the database support a catalog?
|
Appendable |
printAlterTableAddColumn(MetaColumn column,
Appendable out)
Print a SQL sript to add a new column to the table
|
Appendable |
printColumnDeclaration(MetaColumn column,
String aName,
Appendable out)
Print a SQL to create column
|
Appendable |
printColumnOrderAlias(ColumnWrapper column,
Appendable out)
Print a full SQL column alias name by sample: o_[TABLE]_[ALIAS_COLUMN] - used for as order alias
|
Appendable |
printColumnUnderAlias(MetaColumn column,
Appendable out)
Print a full SQL column alias name by sample: [TABLE]_[ALIAS_COLUMN]
|
Appendable |
printComment(MetaColumn column,
Appendable out)
Important note for MySQL: the change of column modifies all another column attributes so the comment update can revert some hand-made changes different from meta-model.
|
Appendable |
printComment(MetaTable table,
Appendable out)
Print a Comment on the table
|
Appendable |
printCreateSchema(String schema,
Appendable out)
Print SQL 'CREATE SCHEMA'
|
Appendable |
printDefaultConstraint(MetaColumn column,
StringBuilder out)
Print Default Constraint
|
Appendable |
printDefaultValue(MetaColumn column,
Appendable out)
Print a SQL phrase for the DEFAULT VALUE, for example: DEFAULT 777
|
Appendable |
printDelete(CriterionDecoder decoder,
Appendable out)
Print an SQL DELETE statement.
|
Appendable |
printFullTableName(MetaTable table,
boolean printSymbolSchema,
Appendable out)
Print a extended SQL table name by sample: SCHEMA.TABLE
|
Appendable |
printInsert(List<? extends OrmUjo> bo,
int idxFrom,
int idxTo,
Appendable out)
Print an SQL INSERT statement.
|
protected void |
printOrderColumns(Query query,
Appendable out,
boolean asOrderAlias,
boolean addOrderAlias,
boolean showDesc) |
Appendable |
printQuotedNameAlways(CharSequence name,
Appendable sql)
Prints quoted name (identifier) to SQL always.
|
void |
printSelectOrder(Query query,
Appendable out,
boolean orderAlias)
Print SQL ORDER BY
|
protected Appendable |
printSelectTable(Query query,
boolean count,
Appendable out)
Custom implementation of MS-SQL dialect due to different offset and limit usage
|
Appendable |
printSequenceTable(MetaDatabase db,
Appendable out)
Print SQL CREATE SEQUENCE.
|
protected Appendable |
printSequenceTableName(UjoSequencer sequence,
Appendable out)
Print the full sequence table
|
protected void |
printTableAliasDefinition(CriterionDecoder decoder,
Appendable out)
Print table alias definition
|
protected void |
printTableColumnsUnderAliases(Collection<ColumnWrapper> columnWrappers,
Appendable out)
prints columns in [TABLE]_[COLUMN_NAME] separated by comma
|
protected void |
printTableColumnsWithUnderAliases(Collection<ColumnWrapper> columnWrappers,
Appendable out)
prints columns in "[TABLE].
|
protected void |
printTablesWithAlias(Collection<MetaTable> tables,
Appendable out) |
Appendable |
printUpdate(List<MetaColumn> changedColumns,
CriterionDecoder decoder,
Appendable out)
Print an SQL UPDATE statement.
|
void |
releaseSavepoint(Connection conn,
Savepoint savepoint,
boolean afterRollback)
Perform the method: {@link Connection#releaseSavepoint(java.sql.Savepoint) ?
|
createConnection, createJndiInitialContext, createSubQuery, escape, getAliasColumnName, getCriterionTemplate, getExtentedDialect, getKeywordSet, getNameProvider, getQuotedName, getSeqTableModel, isColumnLengthAllowed, isFilled, isInnerJoin, isMultiRowInsertSupported, printAlterTableColumn, printCall, printColumnAlias, printCommit, printCriterion, printCriterionValue, printDefaultSchema, printFKColumnsDeclaration, printForeignKey, printForeignKey, printFullTableName, printIndex, printInsert, printInsertBySelect, println, printLockForSelect, printNextSequence, printOffset, printQuotedName, printSelect, printSelectOrder, printSelectTableBase, printSelectView, printSequenceCurrentValue, printSequenceDeleteById, printSequenceInit, printSequenceInitWithValues, printSequenceNextValue, printSetMaxSequence, printTable, printTableAliasDefinition, printTableColumns, setHandlerpublic String getJdbcUrl()
SqlDialectgetJdbcUrl in class SqlDialectpublic String getJdbcDriver()
SqlDialectgetJdbcDriver in class SqlDialectpublic boolean isCatalog()
isCatalog in class SqlDialecttrue.public Appendable printUpdate(List<MetaColumn> changedColumns, CriterionDecoder decoder, Appendable out) throws IOException
printUpdate in class SqlDialectIOExceptionpublic Appendable printDelete(CriterionDecoder decoder, Appendable out) throws IOException
printDelete in class SqlDialectIOExceptionpublic Appendable printColumnUnderAlias(MetaColumn column, Appendable out) throws IOException
IOExceptionpublic Appendable printColumnOrderAlias(ColumnWrapper column, Appendable out) throws IOException
IOExceptionprotected void printTableColumnsWithUnderAliases(Collection<ColumnWrapper> columnWrappers, Appendable out) throws IOException
IOExceptionprotected void printTableColumnsUnderAliases(Collection<ColumnWrapper> columnWrappers, Appendable out) throws IOException
IOExceptionprotected void createInnerSelectPart(Query query, Appendable out) throws IOException
IOExceptionprotected void createRowOrderPart(Query query, Appendable out, boolean asOrderAlias) throws IOException
IOExceptionprotected void printOrderColumns(Query query, Appendable out, boolean asOrderAlias, boolean addOrderAlias, boolean showDesc) throws IOException
IOExceptionpublic void printSelectOrder(Query query, Appendable out, boolean orderAlias) throws IOException
IOExceptionprotected void createWherePart(Query query, Appendable out) throws IOException
IOExceptionprotected void printTablesWithAlias(Collection<MetaTable> tables, Appendable out) throws IOException
IOExceptionprotected void createOuterPart(String innerSelect, Query query, Appendable out) throws IOException
IOExceptionprotected Appendable printSelectTable(Query query, boolean count, Appendable out) throws IOException
printSelectTable in class SqlDialectquery - The UJO querycount - only count of items is required;IOExceptionprotected String getColumnType(MetaColumn column)
SqlDialectgetColumnType in class SqlDialectpublic Appendable printComment(MetaTable table, Appendable out) throws IOException
printComment in class SqlDialectIOExceptionpublic Appendable printComment(MetaColumn column, Appendable out) throws IOException
printComment in class SqlDialectIOExceptionpublic Appendable printCreateSchema(String schema, Appendable out) throws IOException
SqlDialectprintCreateSchema in class SqlDialectIOExceptionpublic Appendable printFullTableName(MetaTable table, boolean printSymbolSchema, Appendable out) throws IOException
printFullTableName in class SqlDialectprintSymbolSchema - True parameter replaces a default schema name for the symbol "~" by the example: ~.TABLEIOExceptionpublic Appendable printSequenceTable(MetaDatabase db, Appendable out) throws IOException
printSequenceTable in class SqlDialectIOExceptionprotected Appendable printSequenceTableName(UjoSequencer sequence, Appendable out) throws IOException
SqlDialectprintSequenceTableName in class SqlDialectIOExceptionpublic Appendable printAlterTableAddColumn(MetaColumn column, Appendable out) throws IOException
printAlterTableAddColumn in class SqlDialectIOExceptionpublic Appendable printDefaultConstraint(MetaColumn column, StringBuilder out) throws IOException
SqlDialectprintDefaultConstraint in class SqlDialectIOExceptionpublic Appendable printDefaultValue(MetaColumn column, Appendable out) throws IOException
printDefaultValue in class SqlDialectIOExceptionpublic Appendable printInsert(List<? extends OrmUjo> bo, int idxFrom, int idxTo, Appendable out) throws IOException
SqlDialectprintInsert in class SqlDialectbo - Business object listidxFrom - Start index from listidxTo - Finished index from list (excluded)IOExceptionSqlDialect.isMultiRowInsertSupported()public Appendable printColumnDeclaration(MetaColumn column, String aName, Appendable out) throws IOException
SqlDialectprintColumnDeclaration in class SqlDialectcolumn - Database ColumnaName - The name parameter is not mandatory, the not null value means a foreign key.IOExceptionpublic void releaseSavepoint(Connection conn, Savepoint savepoint, boolean afterRollback) throws SQLException
releaseSavepoint in class SqlDialectconn - Database Connectionsavepoint - Required SavepointafterRollback - release is called after a rollback ?SQLExceptionhttp://technet.microsoft.com/en-us/library/ms378791%28v=sql.110%29.aspx,
Connection.releaseSavepoint(java.sql.Savepoint)public Appendable printQuotedNameAlways(CharSequence name, Appendable sql) throws IOException
printQuotedNameAlways in class SqlDialectname - Name (identifier) for quotingsql - Target SQL for printing new quoted nameIOExceptionprotected void printTableAliasDefinition(CriterionDecoder decoder, Appendable out) throws IOException
IOExceptionCopyright 2013, Pavel Ponec