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.

Reply via email to