Class ExasolSqlDialect
- java.lang.Object
-
- com.exasol.adapter.dialects.AbstractSqlDialect
-
- com.exasol.adapter.dialects.exasol.ExasolSqlDialect
-
- All Implemented Interfaces:
com.exasol.adapter.dialects.SqlDialect
public class ExasolSqlDialect extends com.exasol.adapter.dialects.AbstractSqlDialectExasol SQL dialect.
-
-
Constructor Summary
Constructors Constructor Description ExasolSqlDialect(com.exasol.adapter.jdbc.ConnectionFactory connectionFactory, com.exasol.adapter.AdapterProperties properties)Create a new instance of theExasolSqlDialect.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringapplyQuote(java.lang.String identifier)protected com.exasol.adapter.dialects.QueryRewritercreateQueryRewriter()Create a query rewriter.protected com.exasol.adapter.jdbc.RemoteMetadataReadercreateRemoteMetadataReader()com.exasol.adapter.capabilities.CapabilitiesgetCapabilities()com.exasol.adapter.dialects.SqlDialect.NullSortinggetDefaultNullSorting()java.lang.StringgetName()com.exasol.adapter.sql.SqlNodeVisitor<java.lang.String>getSqlGenerationVisitor(com.exasol.adapter.dialects.SqlGenerationContext context)protected java.util.List<java.lang.String>getSupportedProperties()booleanrequiresCatalogQualifiedTableNames(com.exasol.adapter.dialects.SqlGenerationContext context)booleanrequiresSchemaQualifiedTableNames(com.exasol.adapter.dialects.SqlGenerationContext context)com.exasol.adapter.dialects.SqlDialect.StructureElementSupportsupportsJdbcCatalogs()com.exasol.adapter.dialects.SqlDialect.StructureElementSupportsupportsJdbcSchemas()voidvalidateProperties()-
Methods inherited from class com.exasol.adapter.dialects.AbstractSqlDialect
checkImportPropertyConsistency, createUnsupportedElementMessage, getAggregateFunctionAliases, getBinaryInfixFunctionAliases, getPrefixFunctionAliases, getScalarFunctionAliases, getStringLiteral, getTableCatalogAndSchemaSeparator, omitParentheses, readSchemaMetadata, readSchemaMetadata, rewriteQuery, validateBooleanProperty, validateCastNumberToDecimalProperty, validateSupportedPropertiesList
-
-
-
-
Constructor Detail
-
ExasolSqlDialect
public ExasolSqlDialect(com.exasol.adapter.jdbc.ConnectionFactory connectionFactory, com.exasol.adapter.AdapterProperties properties)Create a new instance of theExasolSqlDialect.- Parameters:
connectionFactory- factory for the JDBC connection to the remote data sourceproperties- adapter properties
-
-
Method Detail
-
getName
public java.lang.String getName()
-
createRemoteMetadataReader
protected com.exasol.adapter.jdbc.RemoteMetadataReader createRemoteMetadataReader()
- Specified by:
createRemoteMetadataReaderin classcom.exasol.adapter.dialects.AbstractSqlDialect
-
createQueryRewriter
protected com.exasol.adapter.dialects.QueryRewriter createQueryRewriter()
Create a query rewriter.Virtual Schema for Exasol supports the following import variants which are represented by dedicated query re-writers:
- local
- Create a
SELECTstatement that is directly executed on the local Exasol database. IMPORT FROM EXA- Create dedicated import statement for a remote Exasol database that is more efficient than a regular JDBC import.
- JDBC import
- Create a regular JDBC import
- Specified by:
createQueryRewriterin classcom.exasol.adapter.dialects.AbstractSqlDialect
-
supportsJdbcCatalogs
public com.exasol.adapter.dialects.SqlDialect.StructureElementSupport supportsJdbcCatalogs()
-
supportsJdbcSchemas
public com.exasol.adapter.dialects.SqlDialect.StructureElementSupport supportsJdbcSchemas()
-
getCapabilities
public com.exasol.adapter.capabilities.Capabilities getCapabilities()
-
applyQuote
public java.lang.String applyQuote(java.lang.String identifier)
-
requiresCatalogQualifiedTableNames
public boolean requiresCatalogQualifiedTableNames(com.exasol.adapter.dialects.SqlGenerationContext context)
-
requiresSchemaQualifiedTableNames
public boolean requiresSchemaQualifiedTableNames(com.exasol.adapter.dialects.SqlGenerationContext context)
-
getDefaultNullSorting
public com.exasol.adapter.dialects.SqlDialect.NullSorting getDefaultNullSorting()
-
validateProperties
public void validateProperties() throws com.exasol.adapter.dialects.PropertyValidationException- Specified by:
validatePropertiesin interfacecom.exasol.adapter.dialects.SqlDialect- Overrides:
validatePropertiesin classcom.exasol.adapter.dialects.AbstractSqlDialect- Throws:
com.exasol.adapter.dialects.PropertyValidationException
-
getSupportedProperties
protected java.util.List<java.lang.String> getSupportedProperties()
- Specified by:
getSupportedPropertiesin classcom.exasol.adapter.dialects.AbstractSqlDialect
-
getSqlGenerationVisitor
public com.exasol.adapter.sql.SqlNodeVisitor<java.lang.String> getSqlGenerationVisitor(com.exasol.adapter.dialects.SqlGenerationContext context)
- Specified by:
getSqlGenerationVisitorin interfacecom.exasol.adapter.dialects.SqlDialect- Overrides:
getSqlGenerationVisitorin classcom.exasol.adapter.dialects.AbstractSqlDialect
-
-