Skip to content

Commit ef6b95a

Browse files
committed
Updated documentation with new TIMESTAMP type mappings
1 parent d7ff56f commit ef6b95a

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

docs/src/main/sphinx/connector/exasol.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,13 @@ Trino data type mapping:
101101
* - ``DATE``
102102
- ``DATE``
103103
-
104+
* - ``TIMESTAMP(n)``
105+
- ``TIMESTAMP(n)``
106+
- See :ref:`exasol-timestamp-mapping`
107+
* - ``TIMESTAMP(n) WITH LOCAL TIME ZONE``
108+
- ``TIMESTAMP(n) WITH TIME ZONE``
109+
- See :ref:`exasol-timestamp-with-local-time-zone-mapping`
110+
104111
```
105112

106113
No other types are supported.
@@ -127,6 +134,34 @@ If no length is specified, the connector uses 2000000.
127134
Trino's `CHAR(n)` maps to `CHAR(n)` and vice versa if `n` is no greater than 2000.
128135
Exasol does not support longer values.
129136

137+
(exasol-timestamp-mapping)=
138+
### Mapping `TIMESTAMP` Types
139+
140+
Exasol `TIMESTAMP(n)` columns are mapped to Trino's `TIMESTAMP(n)` type and vice versa, with the following exceptions:
141+
142+
- **No precision specified**:
143+
If the precision is omitted (i.e., the column is defined as `TIMESTAMP` without `(n)`), Exasol defaults to a precision of 3. This maps to Trino's `TIMESTAMP(3)`.
144+
145+
- **Precision greater than 9**:
146+
Exasol supports up to 9 digits of fractional seconds. If the precision in Exasol exceeds 9, an exception is thrown
147+
148+
- **Negative precision**:
149+
Negative values for precision are invalid. If encountered, an exception is thrown.
150+
151+
(exasol-timestamp-with-local-time-zone-mapping)=
152+
### Mapping `TIMESTAMP WITH LOCAL TIME ZONE` Types
153+
154+
Exasol `TIMESTAMP(n) WITH LOCAL TIME ZONE` columns are mapped to Trino's `TIMESTAMP(n) WITH TIME ZONE` type and vice versa, with the following exceptions:
155+
156+
- **No precision specified**:
157+
If the precision is omitted (i.e., the column is defined as `TIMESTAMP WITH LOCAL TIME ZONE` without `(n)`), Exasol defaults to a precision of 3. This maps to Trino's `TIMESTAMP(3) WITH TIME ZONE`.
158+
159+
- **Precision greater than 9**:
160+
Exasol supports up to 9 digits of fractional seconds. If the precision in Exasol exceeds 9, an exception is thrown.
161+
162+
- **Negative precision**:
163+
Negative values for precision are invalid. If encountered, an exception is thrown.
164+
130165
```{include} jdbc-type-mapping.fragment
131166
```
132167

0 commit comments

Comments
 (0)