A validating SQL lexer and parser with a focus on MySQL dialect.
bin/sql-parser
executable file (#517)Fixed ALTER .. MODIFY ... ENUM failed!
#511
:=
was not recognized as an operator just like =
(#306)ALTER TABLE … MODIFY … ENUM('<reserved_keyword>')
is being wrongly parsed (#234)ALTER TABLE … MODIFY … ENUM('<reserved_keyword>')
is being wrongly parsed (#478)COLLATE
in WHERE
clauses (#491)ALTER EVENT RENAME TO
to use expression instead of var (#419) by @niconoe-GROUP BY
modifier WITH ROLLUP
is treated as a syntax error and prevents export of SQL query results by @niconoe-TokensList::getPrevious
was not able to reach very first token (#428) by @TithuguesTransactionStatement::build()
"Call to a member function build() on null" when the transaction has no end by @williamdesALTER TABLE … RENAME COLUMN … TO …
is not understood by the parser/linter (#430) by @niconoe-PARTITION
syntax errors (#377) by @niconoe-ALTER USER
when used with IDENTIFIED WITH/VIA/BY
option (#431) by @TithuguesCOALESCE PARTITION
in ALTER TABLE
, rather than COALESCE
(#323) by @TithuguesALGORITHM
and LOCK
options in ALTER TABLE
statements (#319) by @Tithuguesenclosed by
is not recognized by the parser when fields
is in lower case (#236) by @williamdesKEY
on CreateDefinition
(#330) by @williamdesCALL
statements parsing (#372) by @williamdesLEFT JOIN
, JOIN
, INNER JOIN
on UpdateStatement
(#260) by @williamdesTABLE
and REPLACE
statements on DESCRIBE
statements by @williamdesDESCRIBE
to allow a schema.table syntax (#445) by @williamdesnextToken()
function (#397) by @iifawziALTER EVENT
(#404) by @iifawziALTER EVENT
keywords (#404) by @iifawziRENAME INDEX x TO y
(#405) by @iifawziCreateStatement
function's options (#406) by @iifawziANALYZE
(#413) by @iifawziContext::SQL_MODE*
constants to Context::setMode
method by @MauricioFauthCREATE VIEW
statements (#371) by @iifawziCOMPRESSED
columns (#351) by @iifawzi#[\AllowDynamicProperties]
on Statement
and Expression
classes for PHP 8.2 support (4ee76d94525a092df6b6ea1109171bfc9bc73f52) by @williamdesALTER
queries of PARTITIONS
(#329) by @iifawziANALYZE
and EXPLAIN
statements (#386) by @iifawziEXPLAIN
Parser (#389) by @iifawzimultipoint
and multipolygon
data types (#393) by @iifawziExpression
component (#399) by @iifawzicomposer.json
by @williamdescomposer.json
(#401) by @imanghafoori1Released version 4.7.3
Released version 5.5.0
Released version 5.4.2
Released version 4.7.2