Class SQLServerQueryRewriter
- java.lang.Object
-
- org.apache.metamodel.jdbc.dialects.AbstractQueryRewriter
-
- org.apache.metamodel.jdbc.dialects.DefaultQueryRewriter
-
- org.apache.metamodel.jdbc.dialects.OffsetFetchQueryRewriter
-
- org.apache.metamodel.jdbc.dialects.SQLServerQueryRewriter
-
- All Implemented Interfaces:
IQueryRewriter
public class SQLServerQueryRewriter extends OffsetFetchQueryRewriter
-
-
Field Summary
Fields Modifier and Type Field Description static intFIRST_FETCH_SUPPORTING_VERSION
-
Constructor Summary
Constructors Constructor Description SQLServerQueryRewriter(JdbcDataContext dataContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanisMaxRowsSupported()Gets whether this query rewriter is able to write the "Max rows" query property to the query string.booleanisSchemaIncludedInColumnPaths()SQL server expects the fully qualified column name, including schema, in select items.StringrewriteColumnType(org.apache.metamodel.schema.ColumnType columnType, Integer columnSize)Rewrites the name of a column type, as it is written in CREATE TABLE statements.StringrewriteFilterItem(org.apache.metamodel.query.FilterItem item)protected StringrewriteSelectClause(org.apache.metamodel.query.Query query, org.apache.metamodel.query.SelectClause selectClause)-
Methods inherited from class org.apache.metamodel.jdbc.dialects.OffsetFetchQueryRewriter
isFirstRowSupported, rewriteQuery
-
Methods inherited from class org.apache.metamodel.jdbc.dialects.DefaultQueryRewriter
beforeRewrite, escapeQuotes, isAggregateFunctionSupported, isPrimaryKeySupported, isScalarFunctionSupported, needsQuoting, rewriteFilterItemWithOperandLiteral, rewriteTimestamp
-
Methods inherited from class org.apache.metamodel.jdbc.dialects.AbstractQueryRewriter
getColumnType, getDataContext, getResultSetValue, isSupportedVersion, isTransactional, rewriteColumnTypeInternal, rewriteFromClause, rewriteFromItem, rewriteFromItem, rewriteGroupByClause, rewriteGroupByItem, rewriteHavingClause, rewriteOrderByClause, rewriteOrderByItem, rewriteSelectItem, rewriteWhereClause, setStatementParameter, toTime, toTimestamp
-
-
-
-
Field Detail
-
FIRST_FETCH_SUPPORTING_VERSION
public static final int FIRST_FETCH_SUPPORTING_VERSION
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SQLServerQueryRewriter
public SQLServerQueryRewriter(JdbcDataContext dataContext)
-
-
Method Detail
-
isMaxRowsSupported
public boolean isMaxRowsSupported()
Description copied from interface:IQueryRewriterGets whether this query rewriter is able to write the "Max rows" query property to the query string.- Specified by:
isMaxRowsSupportedin interfaceIQueryRewriter- Overrides:
isMaxRowsSupportedin classOffsetFetchQueryRewriter- Returns:
- whether this query rewriter is able to write the "Max rows" query property to the query string.
-
isSchemaIncludedInColumnPaths
public boolean isSchemaIncludedInColumnPaths()
SQL server expects the fully qualified column name, including schema, in select items.- Overrides:
isSchemaIncludedInColumnPathsin classAbstractQueryRewriter
-
rewriteSelectClause
protected String rewriteSelectClause(org.apache.metamodel.query.Query query, org.apache.metamodel.query.SelectClause selectClause)
- Overrides:
rewriteSelectClausein classAbstractQueryRewriter
-
rewriteColumnType
public String rewriteColumnType(org.apache.metamodel.schema.ColumnType columnType, Integer columnSize)
Description copied from interface:IQueryRewriterRewrites the name of a column type, as it is written in CREATE TABLE statements. Some databases dont support all column types, or have different names for them. The implementation of this method will do that conversion.- Specified by:
rewriteColumnTypein interfaceIQueryRewriter- Overrides:
rewriteColumnTypein classDefaultQueryRewriter- Parameters:
columnType- the (non-null)ColumnTypeto rewritecolumnSize- the (possibly null) column size that may or may not have been specified- Returns:
-
rewriteFilterItem
public String rewriteFilterItem(org.apache.metamodel.query.FilterItem item)
- Specified by:
rewriteFilterItemin interfaceIQueryRewriter- Overrides:
rewriteFilterItemin classDefaultQueryRewriter
-
-