Details
-
Task
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
N/A
-
None
-
MXS-SPRINT-269, MXS-SPRINT-270
Description
Reproduce:
create table t1 (`add` int); |
insert into t1 values (1); |
Reserved words:
SELECT * FROM "SYS"."EXA_SQL_KEYWORDS" WHERE "reserved" = TRUE ORDER BY "keyword" |
Solution: Quote reserved words
SQL_EXA> create table t1 ( add int); |
EXA: create table t1 ( add int); |
Error: [42000] syntax error, unexpected ADD_ [line 1, column 19] (Session: 1866547573966962688) |
SQL_EXA> create table t1 ( "add" int); |
EXA: create table t1 ( "add" int); |
 |
Rows affected: 0 |
There are 3 Super Reserved words that even when quoted dont work:
ROWNUM , ROWID, LEVEL
That give errors like
java.sql.SQLException: LEVEL not allowed as column name.
|
However we can configure exa to avoid these super alias' but also disable the use of CONNECT BY syntax
https://docs.exasol.com/db/latest/sql_references/operators/connectbyoperators.htm
-useLevelPseudoColumn=0 |
The CDC likely should stop when it would error on the SQL but the message should reference adding useLevelPseudoColumn to exa configuration