Before the SQL is reformatted, the SQL formatter first checks the syntax of the input SQL,
then creates a parse tree for each SQL: Finally, it formats your SQL based on the parse tree. If there are syntax errors in the SQL,
the internal parser will not generate the parse tree, so SQL will not be formatted.
This SQL formatter is based on the
General SQL Parser which supports the entry level of ANSI SQL99.
It also supports most common SQL of MSSQL and Oracle including PLSQL.
General SQL Parser also supports MySQL and MS ACCESS,
so most SQL dialects of these databases can be formatted.
However,
General SQL Parser is still under development, and some SQL such as 'create trigger' are still not supported.
If this formatter encounters SQL that the internal parser can't handle, no formatted sql will be generated.
This will be improved when
General SQL Parser supports more and enhanced SQL at a later time.