public class Db2SqlDialect extends SqlDialect
SqlDialect implementation for the IBM DB2 database.SqlDialect.CalendarPolicy, SqlDialect.Context, SqlDialect.DatabaseProduct, SqlDialect.FakeUtil| Modifier and Type | Field and Description |
|---|---|
static SqlDialect |
DEFAULT |
static SqlDialect.Context |
DEFAULT_CONTEXT |
BUILT_IN_OPERATORS_LIST, EMPTY_CONTEXT, identifierEndQuoteString, identifierEscapedQuote, identifierQuoteString, literalEndQuoteString, literalEscapedQuote, literalQuoteString, LOGGER, nullCollation| Constructor and Description |
|---|
Db2SqlDialect(SqlDialect.Context context)
Creates a Db2SqlDialect.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
hasImplicitTableAlias()
Returns whether a qualified table in the FROM clause has an implicit alias
which consists of just the table name.
|
boolean |
supportsCharSet()
Returns whether the dialect supports character set names as part of a
data type, for instance
VARCHAR(30) CHARACTER SET `ISO-8859-1`. |
void |
unparseSqlIntervalLiteral(SqlWriter writer,
SqlIntervalLiteral literal,
int leftPrec,
int rightPrec)
Converts an interval literal to a SQL string.
|
void |
unparseSqlIntervalQualifier(SqlWriter writer,
SqlIntervalQualifier qualifier,
RelDataTypeSystem typeSystem)
Converts an interval qualifier to a SQL string.
|
allowsAs, configureParser, configureParser, containsNonAscii, create, defaultNullDirection, emulateJoinTypeForCrossJoin, emulateNullDirection, emulateNullDirectionWithIsNull, getCalendarPolicy, getCastSpec, getConformance, getDatabaseProduct, getNullCollation, getProduct, getQuotedCasing, getQuoting, getSingleRowTableName, getTypeSystem, getUnquotedCasing, identifierNeedsQuote, isCaseSensitive, quoteIdentifier, quoteIdentifier, quoteIdentifier, quoteStringLiteral, quoteStringLiteral, quoteStringLiteralUnicode, quoteTimestampLiteral, requiresAliasForFromItems, rewriteSingleValueExpr, supportsAggregateFunction, supportsAggregateFunctionFilter, supportsAliasedValues, supportsApproxCountDistinct, supportsDataType, supportsFunction, supportsGroupByLiteral, supportsGroupByWithCube, supportsGroupByWithRollup, supportsImplicitTypeCoercion, supportsJoinType, supportsNestedAggregations, supportsOffsetFetch, supportsWindowFunctions, unparseCall, unparseDateTimeLiteral, unparseFetchUsingAnsi, unparseFetchUsingLimit, unparseLimit, unparseOffset, unparseOffsetFetch, unparseSqlDatetimeArithmetic, unparseTableScanHints, unparseTopN, unquoteStringLiteralpublic static final SqlDialect.Context DEFAULT_CONTEXT
public static final SqlDialect DEFAULT
public Db2SqlDialect(SqlDialect.Context context)
public boolean supportsCharSet()
SqlDialectVARCHAR(30) CHARACTER SET `ISO-8859-1`.supportsCharSet in class SqlDialectpublic boolean hasImplicitTableAlias()
SqlDialectFor example, in SqlDialect.DatabaseProduct.ORACLE
SELECT * FROM sales.emp
is equivalent to
SELECT * FROM sales.emp AS emp
and therefore
SELECT emp.empno FROM sales.emp
is valid. But SqlDialect.DatabaseProduct.DB2 does not have an implicit
alias, so the previous query it not valid; you need to write
SELECT sales.emp.empno FROM sales.emp
Returns true for all databases except DB2.
hasImplicitTableAlias in class SqlDialectpublic void unparseSqlIntervalQualifier(SqlWriter writer, SqlIntervalQualifier qualifier, RelDataTypeSystem typeSystem)
SqlDialectINTERVAL '1 2:3:4' DAY(4) TO SECOND(4).unparseSqlIntervalQualifier in class SqlDialectpublic void unparseSqlIntervalLiteral(SqlWriter writer, SqlIntervalLiteral literal, int leftPrec, int rightPrec)
SqlDialectINTERVAL '1 2:3:4' DAY(4) TO SECOND(4).unparseSqlIntervalLiteral in class SqlDialectCopyright © 2012-2022 Apache Software Foundation. All Rights Reserved.