Reference to the EDML schema. Setting this is required so that IDEs can assist you while writing your definition.
The identifier of the document collection.
The name of the resulting table in Exasol.
Using this property you can provide documentation.
Defines the mapping for the document's properties. Typically you want to define fields
here to define mappings for this document's properties. But you can also use toJsonMapping
mapping here. In that case the whole document is mapped to a JSON string.
This definition defines the expected nested properties of the current property. For each of the nested properties you can again define a mapping. You only need to define the properties you want to map.
Properties:
PROPERTY_NAME: mappingDefinition
It must be specified a least one column.
Each additional property must conform to the following schema
Type: objectA mapping definition can either:
- map the property to a column or table
- model nested properties of the current property (using fields
)
Maps the selected document property to an Exasol VARCHAR
, column.
Value must be greater or equal to 1
and lesser or equal to 2000000
Behaviour to apply in case a value exceeds the size of the VARCHAR column.
- TRUNCATE: truncate the string
- NULL: use null instead
- ABORT: abort whole query
Name of the Exasol column.
Default: name of the document property
Behaviour to apply in case a value is not the expected type:
- NULL
: use NULL instead
- ABORT
: abort whole query
- CONVERT_OR_NULL
: try to convert the value. If not possible use NULL.
- CONVERT_OR_ABORT
: try to convert the value. If not possible abort the whole query.
If this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
Maps the selected document property and all its descendants to a JSON string. You can alos use this mapping directly for a whole document.
No Additional PropertiesBehaviour to apply in case a value exceeds the size of the Exasol column.
- NULL
: use NULL
instead
- ABORT
: abort whole query
Name of the Exasol column.
Default: name of the document property
Same definition as destinationNameIf this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
Maps the selected document property to an Exasol DECIMAL
column.
Precision of the Exasol DECIMAL
type. See https://docs.exasol.com/sqlreferences/datatypes/datatypedetails.htm
default = 18
Scale of the Exasol DECIMAL
type. See https://docs.exasol.com/sqlreferences/datatypes/datatypedetails.htm
default = 0
Behaviour to apply in case a value exceeds the size of the DECIMAL
column.
- NULL: use NULL
instead
- ABORT: abort whole query
Behaviour to apply in case a value is not the expected type:
- NULL
: use NULL instead
- ABORT
: abort whole query
- CONVERT_OR_NULL
: try to convert the value. If not possible use NULL.
- CONVERT_OR_ABORT
: try to convert the value. If not possible abort the whole query.
Name of the Exasol column.
Default: name of the document property
Same definition as destinationNameIf this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
Maps the selected document property to an Exasol DOUBLE PRECISION
column.
Behaviour to apply in case a value exceeds the size of the DOUBLE PRECISION
column.
- NULL: use NULL
instead
- ABORT: abort whole query
Behaviour to apply in case a value is not the expected type:
- NULL
: use NULL instead
- ABORT
: abort whole query
- CONVERT_OR_NULL
: try to convert the value. If not possible use NULL.
- CONVERT_OR_ABORT
: try to convert the value. If not possible abort the whole query.
Name of the Exasol column.
Default: name of the document property
Same definition as destinationNameIf this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
Maps the selected document property to an Exasol BOOL
column.
Behaviour to apply in case a value is not the expected type:
- NULL
: use NULL instead
- ABORT
: abort whole query
- CONVERT_OR_NULL
: try to convert the value. If not possible use NULL.
- CONVERT_OR_ABORT
: try to convert the value. If not possible abort the whole query.
Name of the Exasol column.
Default: name of the document property
Same definition as destinationNameIf this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
Maps the selected document property to an Exasol DATE
column.
Behaviour to apply in case a value is not the expected type:
- NULL
: use NULL instead
- ABORT
: abort whole query
- CONVERT_OR_NULL
: try to convert the value. If not possible use NULL.
- CONVERT_OR_ABORT
: try to convert the value. If not possible abort the whole query.
Name of the Exasol column.
Default: name of the document property
Same definition as destinationNameIf this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
Maps the selected document property to an Exasol TIMESTAMP
or TIMESTAMP WITH LOCAL TIMEZONE
column.
Behaviour to apply in case a value is not the expected type:
- NULL
: use NULL instead
- ABORT
: abort whole query
- CONVERT_OR_NULL
: try to convert the value. If not possible use NULL.
- CONVERT_OR_ABORT
: try to convert the value. If not possible abort the whole query.
If set to true
the adapter will use a TIMESTAMP WITH LOCAL TIMEZONE
Exasol column instead of a TIMEZONE
column.
Name of the Exasol column.
Default: name of the document property
Same definition as destinationNameIf this property is set to true
, queries will abort if the given mapping cannot find a single document. Else, the query will continue and set this cell to a default value. By default this is property is set to false
.
Setting this property marks a column as key.
Key columns are used as foreign keys from ToTableMappings
for nested lists.
A key can either be local or global. A global key must be unique over all rows of the table. A local key must only be unique in the scope of the nested list.
This mapping is used for normalizing documents to table structures. It creates a new table in the resulting virtual schema named: <NAMEOFPARENT><GIVENNAME>.
You can define the columns of this table using the mapping property. If the parent table defines a key using one or more toVarcharMappings
for a key or secondary index in the document database, this will be used as foreign key.
Defines the mapping for the columns of the new table. If the document list contains non-objects (like strings) here, you can directly use toVarcharMapping
here. Otherwise, if the list contains objects, you can define mappings for the nested properties using fields
.
If set to true
, this adapter adds the source reference as a column named SOURCE_REFERENCE
to the Exasol table.
This feature is mainly useful if multiple sources are used (not supported by all dialects). In that case you can filter on the source name.