Package org.teiid.translator.jdbc.exasol
Class ExasolExecutionFactory
- java.lang.Object
-
- org.teiid.translator.ExecutionFactory<DataSource,Connection>
-
- org.teiid.translator.jdbc.JDBCExecutionFactory
-
- org.teiid.translator.jdbc.exasol.ExasolExecutionFactory
-
@Translator(name="exasol", description="Translator for EXASOL database") public class ExasolExecutionFactory extends JDBCExecutionFactory
Translator for the EXASOL database. Acknowledgements to Nevena Tacheva from Exasol for the initial work on identifying most of pushdown and supported functions.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.teiid.translator.jdbc.JDBCExecutionFactory
JDBCExecutionFactory.StructRetrieval
-
Nested classes/interfaces inherited from class org.teiid.translator.ExecutionFactory
ExecutionFactory.Format, ExecutionFactory.NullOrder, ExecutionFactory.SupportedJoinCriteria, ExecutionFactory.TransactionSupport
-
-
Field Summary
-
Fields inherited from class org.teiid.translator.jdbc.JDBCExecutionFactory
DEFAULT_MAX_DEPENDENT_PREDICATES, DEFAULT_MAX_IN_CRITERIA, DEFAULT_TIME_ZONE, dialect
-
Fields inherited from class org.teiid.translator.ExecutionFactory
DEFAULT_MAX_FROM_GROUPS, DEFAULT_MAX_IN_CRITERIA_SIZE, DEFAULT_MAX_PROJECTED_COLUMNS
-
-
Constructor Summary
Constructors Constructor Description ExasolExecutionFactory()
-
Method Summary
-
Methods inherited from class org.teiid.translator.jdbc.JDBCExecutionFactory
addSourceComment, afterInitialConnectionObtained, bindValue, closeConnection, convertObject, createDirectExecution, createMetadataProcessor, createProcedureExecution, createResultSetExecution, createTempTable, createUpdateExecution, executeStoredProcedure, formatDateValue, formatDateValue, getCommentFormat, getConnection, getCreateTemporaryTablePostfix, getCreateTemporaryTableString, getCreateTempTableSQL, getDatabaseCalendar, getDatabaseTimeZone, getDatabaseVersion, getDefaultSupportedFunctions, getDialect, getFunctionModifiers, getHibernateDialectClassName, getLateralKeyword, getLikeRegexString, getMaxPreparedInsertBatchSize, getMetadata, getMetadataProcessor, getRemovePushdownCharacters, getSetOperationString, getSourceComment, getSQLConversionVisitor, getStructRetrieval, getTemporaryTableName, getTimestampNanoPrecision, getVersion, hasTimeType, initCapabilities, intializeConnectionAfterCancel, isCharacterType, isDefaultTimeZone, isEnableDependentJoins, isExtendedAscii, isNonAscii, isNonAscii, isNonAsciiFunction, isSourceRequired, isSourceRequiredForCapabilities, isTrimStrings, loadedTemporaryTable, obtainedConnection, preserveNullTyping, registerFunctionModifier, registerSpecificTypeOfOutParameter, replaceElementName, retrieveGeographyValue, retrieveGeographyValue, retrieveGeometryValue, retrieveGeometryValue, setCommentFormat, setDatabaseTimeZone, setDatabaseVersion, setDatabaseVersion, setEnableDependentJoins, setFetchSize, setMaxPreparedInsertBatchSize, setRemovePushdownCharacters, setStructRetrieval, setTrimStrings, setUseBindingsForDependentJoin, setUseBindVariables, setUseCommentsInSourceQuery, supportsAggregatesAvg, supportsAggregatesCount, supportsAggregatesCountStar, supportsAggregatesDistinct, supportsAggregatesMax, supportsAggregatesMin, supportsAggregatesSum, supportsAliasedTable, supportsBooleanExpressions, supportsBulkUpdate, supportsCompareCriteriaEquals, supportsDependentJoins, supportsFullDependentJoins, supportsGeneratedKeys, supportsGeneratedKeys, supportsGroupBy, supportsHaving, supportsInCriteria, supportsInsertWithQueryExpression, supportsIsNullCriteria, supportsLikeCriteria, supportsLikeCriteriaEscapeCharacter, supportsNotCriteria, supportsOrCriteria, supportsOrderByUnrelated, supportsProcedureParameterExpression, supportsScalarSubqueries, supportsSelectExpression, supportsSelfJoins, supportsSetQueryOrderBy, supportsUnions, tempTableRequiresTransaction, translate, translateCommand, translateGeographyLiteral, translateGeographyParameter, translateGeographySelect, translateGeometryLiteral, translateGeometryParameter, translateGeometrySelect, translateLimit, translateLiteralBinaryType, translateLiteralBoolean, translateLiteralDate, translateLiteralTime, translateLiteralTimestamp, useAsInGroupAlias, useBindingsForDependentJoin, useBindVariables, useColumnNamesForGeneratedKeys, useCommentsInSourceQuery, useNBindingType, useParensForJoins, useParensForSetQueries, usePreparedStatements, useScientificNotation, usesDatabaseVersion, useSelectLimit, useStreamsForLobs, useUnicodePrefix, useWithRollup
-
Methods inherited from class org.teiid.translator.ExecutionFactory
addPushDownFunction, areLobsUsableAfterClose, createExecution, getCacheDirective, getCollationLocale, getConnection, getDirectQueryProcedureName, getExcludedCommonTableExpressionName, getInstance, getLanguageFactory, getMaxDependentInPredicates, getMaxFromGroups, getMaxInCriteriaSize, getMaxProjectedColumns, getNativeQueryProcedureName, getPushDownFunctions, getRequiredLikeEscape, getSupportedJoinCriteria, getTransactionSupport, getTypeFacility, isCopyLobs, isForkable, isImmutable, isSourceRequiredForMetadata, isThreadBound, requiresCriteria, returnsSingleUpdateCount, setCollationLocale, setCopyLobs, setDirectQueryProcedureName, setExcludedCommonTableExpressionName, setImmutable, setMaxDependentInPredicates, setMaxInCriteriaSize, setNativeQueryProcedureName, setRequiresCriteria, setSourceRequired, setSourceRequiredForMetadata, setSupportedJoinCriteria, setSupportsDirectQueryProcedure, setSupportsFullOuterJoins, setSupportsInnerJoins, setSupportsNativeQueries, setSupportsOrderBy, setSupportsOuterJoins, setSupportsSelectDistinct, setThreadBound, setTransactionSupport, supportsAdvancedOlapOperations, supportsAggregatesCountBig, supportsAggregatesEnhancedNumeric, supportsArrayAgg, supportsCompareCriteriaOrderedExclusive, supportsCorrelatedSubqueryLimit, supportsDirectQueryProcedure, supportsElementaryOlapOperations, supportsFormatLiteral, supportsFullOuterJoins, supportsFunctionsInGroupBy, supportsGeographyType, supportsGroupByMultipleDistinctAggregates, supportsInnerJoins, supportsIsDistinctCriteria, supportsLateralJoin, supportsLateralJoinCondition, supportsLikeRegex, supportsListAgg, supportsMultipleOpenExecutions, supportsNativeQueries, supportsOnlyCorrelatedSubqueries, supportsOnlyFormatLiterals, supportsOnlyLateralJoinProcedure, supportsOnlyLiteralComparison, supportsOnlySingleTableGroupBy, supportsOnlyTimestampAddLiteral, supportsOrderByWithExtendedGrouping, supportsOuterJoins, supportsPartialFiltering, supportsProcedureTable, supportsRecursiveCommonTableExpressions, supportsRowOffset, supportsScalarSubqueryProjection, supportsSelectDistinct, supportsSelectExpressionArrayType, supportsSetQueryLimitOffset, supportsSimilarTo, supportsStringAgg, supportsSubqueryCommonTableExpressions, supportsSubqueryInOn, supportsUpsert, supportsWindowDistinctAggregates, supportsWindowFrameClause, supportsWindowFunctionCumeDist, supportsWindowFunctionNthValue, supportsWindowFunctionNtile, supportsWindowFunctionPercentRank, supportsWindowOrderByWithAggregates, useAnsiJoin
-
-
-
-
Field Detail
-
EXASOL
public static final String EXASOL
- See Also:
- Constant Field Values
-
TIME_FORMAT
public static final String TIME_FORMAT
- See Also:
- Constant Field Values
-
DATE_FORMAT
public static final String DATE_FORMAT
- See Also:
- Constant Field Values
-
DATETIME_FORMAT
public static final String DATETIME_FORMAT
- See Also:
- Constant Field Values
-
TIMESTAMP_FORMAT
public static final String TIMESTAMP_FORMAT
- See Also:
- Constant Field Values
-
LN
public static final String LN
- See Also:
- Constant Field Values
-
BIT_AND
public static final String BIT_AND
- See Also:
- Constant Field Values
-
BIT_NOT
public static final String BIT_NOT
- See Also:
- Constant Field Values
-
BIT_OR
public static final String BIT_OR
- See Also:
- Constant Field Values
-
BIT_XOR
public static final String BIT_XOR
- See Also:
- Constant Field Values
-
BIT_LENGTH
public static final String BIT_LENGTH
- See Also:
- Constant Field Values
-
CHARACTER_LENGTH
public static final String CHARACTER_LENGTH
- See Also:
- Constant Field Values
-
CHR
public static final String CHR
- See Also:
- Constant Field Values
-
COLOGNE_PHONETIC
public static final String COLOGNE_PHONETIC
- See Also:
- Constant Field Values
-
EDIT_DISTANCE
public static final String EDIT_DISTANCE
- See Also:
- Constant Field Values
-
INSTR
public static final String INSTR
- See Also:
- Constant Field Values
-
LOWER
public static final String LOWER
- See Also:
- Constant Field Values
-
LTRIM
public static final String LTRIM
- See Also:
- Constant Field Values
-
MID
public static final String MID
- See Also:
- Constant Field Values
-
OCTET_LENGTH
public static final String OCTET_LENGTH
- See Also:
- Constant Field Values
-
REGEXP_INSTR
public static final String REGEXP_INSTR
- See Also:
- Constant Field Values
-
REGEXP_REPLACE
public static final String REGEXP_REPLACE
- See Also:
- Constant Field Values
-
REGEXP_SUBSTR
public static final String REGEXP_SUBSTR
- See Also:
- Constant Field Values
-
REPLACE
public static final String REPLACE
- See Also:
- Constant Field Values
-
REVERSE
public static final String REVERSE
- See Also:
- Constant Field Values
-
RTRIM
public static final String RTRIM
- See Also:
- Constant Field Values
-
SOUNDEX
public static final String SOUNDEX
- See Also:
- Constant Field Values
-
SPACE
public static final String SPACE
- See Also:
- Constant Field Values
-
TO_NUMBER
public static final String TO_NUMBER
- See Also:
- Constant Field Values
-
UNICODE
public static final String UNICODE
- See Also:
- Constant Field Values
-
UNICODECHR
public static final String UNICODECHR
- See Also:
- Constant Field Values
-
UPPER
public static final String UPPER
- See Also:
- Constant Field Values
-
ADD_DAYS
public static final String ADD_DAYS
- See Also:
- Constant Field Values
-
ADD_HOURS
public static final String ADD_HOURS
- See Also:
- Constant Field Values
-
ADD_MINUTES
public static final String ADD_MINUTES
- See Also:
- Constant Field Values
-
ADD_MONTHS
public static final String ADD_MONTHS
- See Also:
- Constant Field Values
-
ADD_SECONDS
public static final String ADD_SECONDS
- See Also:
- Constant Field Values
-
ADD_WEEKS
public static final String ADD_WEEKS
- See Also:
- Constant Field Values
-
ADD_YEARS
public static final String ADD_YEARS
- See Also:
- Constant Field Values
-
DATE_TRUNC
public static final String DATE_TRUNC
- See Also:
- Constant Field Values
-
DAY
public static final String DAY
- See Also:
- Constant Field Values
-
DAYS_BETWEEN
public static final String DAYS_BETWEEN
- See Also:
- Constant Field Values
-
FROM_POSIX_TIME
public static final String FROM_POSIX_TIME
- See Also:
- Constant Field Values
-
HOURS_BETWEEN
public static final String HOURS_BETWEEN
- See Also:
- Constant Field Values
-
MINUTES_BETWEEN
public static final String MINUTES_BETWEEN
- See Also:
- Constant Field Values
-
MONTHS_BETWEEN
public static final String MONTHS_BETWEEN
- See Also:
- Constant Field Values
-
POSIX_TIME
public static final String POSIX_TIME
- See Also:
- Constant Field Values
-
ROUND
public static final String ROUND
- See Also:
- Constant Field Values
-
SECONDS_BETWEEN
public static final String SECONDS_BETWEEN
- See Also:
- Constant Field Values
-
TO_CHAR
public static final String TO_CHAR
- See Also:
- Constant Field Values
-
TO_TIMESTAMP
public static final String TO_TIMESTAMP
- See Also:
- Constant Field Values
-
TRUNC
public static final String TRUNC
- See Also:
- Constant Field Values
-
TRUNCATE
public static final String TRUNCATE
- See Also:
- Constant Field Values
-
YEARS_BETWEEN
public static final String YEARS_BETWEEN
- See Also:
- Constant Field Values
-
-
Method Detail
-
start
public void start() throws TranslatorException- Overrides:
startin classJDBCExecutionFactory- Throws:
TranslatorException
-
getSupportedFunctions
public List<String> getSupportedFunctions()
- Overrides:
getSupportedFunctionsin classJDBCExecutionFactory
-
retrieveValue
public Object retrieveValue(CallableStatement results, int parameterIndex, Class<?> expectedType) throws SQLException
Description copied from class:JDBCExecutionFactoryRetrieve the value for the given parameter index- Overrides:
retrieveValuein classJDBCExecutionFactory- Returns:
- the value
- Throws:
SQLException
-
retrieveValue
public Object retrieveValue(ResultSet results, int columnIndex, Class<?> expectedType) throws SQLException
Description copied from class:JDBCExecutionFactoryRetrieve the value on the current resultset row for the given column index.- Overrides:
retrieveValuein classJDBCExecutionFactory- Returns:
- the value
- Throws:
SQLException
-
supportsConvert
public boolean supportsConvert(int fromType, int toType)- Overrides:
supportsConvertin classExecutionFactory<DataSource,Connection>
-
getDefaultNullOrder
public ExecutionFactory.NullOrder getDefaultNullOrder()
- Overrides:
getDefaultNullOrderin classJDBCExecutionFactory
-
supportsOrderBy
public boolean supportsOrderBy()
- Overrides:
supportsOrderByin classExecutionFactory<DataSource,Connection>
-
supportsOrderByNullOrdering
public boolean supportsOrderByNullOrdering()
- Overrides:
supportsOrderByNullOrderingin classExecutionFactory<DataSource,Connection>
-
supportsSearchedCaseExpressions
public boolean supportsSearchedCaseExpressions()
- Overrides:
supportsSearchedCaseExpressionsin classJDBCExecutionFactory
-
supportsQuantifiedCompareCriteriaSome
public boolean supportsQuantifiedCompareCriteriaSome()
- Overrides:
supportsQuantifiedCompareCriteriaSomein classJDBCExecutionFactory
-
supportsQuantifiedCompareCriteriaAll
public boolean supportsQuantifiedCompareCriteriaAll()
- Overrides:
supportsQuantifiedCompareCriteriaAllin classJDBCExecutionFactory
-
supportsIntersect
public boolean supportsIntersect()
- Overrides:
supportsIntersectin classExecutionFactory<DataSource,Connection>
-
supportsExcept
public boolean supportsExcept()
- Overrides:
supportsExceptin classExecutionFactory<DataSource,Connection>
-
supportsSelectWithoutFrom
public boolean supportsSelectWithoutFrom()
- Overrides:
supportsSelectWithoutFromin classExecutionFactory<DataSource,Connection>
-
supportsGroupByRollup
public boolean supportsGroupByRollup()
- Overrides:
supportsGroupByRollupin classExecutionFactory<DataSource,Connection>
-
supportsArrayType
public boolean supportsArrayType()
- Overrides:
supportsArrayTypein classExecutionFactory<DataSource,Connection>
-
supportsCommonTableExpressions
public boolean supportsCommonTableExpressions()
- Overrides:
supportsCommonTableExpressionsin classExecutionFactory<DataSource,Connection>
-
supportsBatchedUpdates
public boolean supportsBatchedUpdates()
- Overrides:
supportsBatchedUpdatesin classJDBCExecutionFactory
-
supportsRowLimit
public boolean supportsRowLimit()
- Overrides:
supportsRowLimitin classExecutionFactory<DataSource,Connection>
-
supportsExistsCriteria
public boolean supportsExistsCriteria()
- Overrides:
supportsExistsCriteriain classJDBCExecutionFactory
-
supportsInCriteriaSubquery
public boolean supportsInCriteriaSubquery()
- Overrides:
supportsInCriteriaSubqueryin classJDBCExecutionFactory
-
supportsCompareCriteriaOrdered
public boolean supportsCompareCriteriaOrdered()
- Overrides:
supportsCompareCriteriaOrderedin classJDBCExecutionFactory
-
supportsInlineViews
public boolean supportsInlineViews()
- Overrides:
supportsInlineViewsin classJDBCExecutionFactory
-
supportsCorrelatedSubqueries
public boolean supportsCorrelatedSubqueries()
- Overrides:
supportsCorrelatedSubqueriesin classJDBCExecutionFactory
-
-