Give a more useful error message when join specification is missing
-------------------------------------------------------------------
Key: DERBY-4369
URL: https://issues.apache.org/jira/browse/DERBY-4369
Project: Derby
Issue Type: Improvement
Components: SQL
Affects Versions: 10.6.0.0
Reporter: Knut Anders Hatlen
Assignee: Knut Anders Hatlen
Priority: Minor
Currently, if a join is missing a join specification, we see the following
rather cryptic message:
ij> select * from t1 join t2;
ERROR 42X01: Syntax error: Encountered "<EOF>" at line 1, column 24.
Issue the 'help' command for general information on IJ command syntax.
Any unrecognized commands are treated as potential SQL commands and executed
directly.
Consult your DBMS server reference documentation for details of the SQL syntax
supported by your server.
The parser already has code to check if the join specification is missing, but
since the join specification is required in the grammar, we'll never get to
that point in the code if it is missing. If we make the join specification
optional in the grammar, the code path with the more helpful message will be
enabled, and we'll see this instead:
ij> select * from t1 join t2;
ERROR 42Y11: A join specification is required with the 'INNER JOIN' clause.
This will make it clearer what the problem is.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.