PackageTrack
Sign in Get early access

phpmyadmin/sql-parser

A validating SQL lexer and parser with a focus on MySQL dialect.

6.0.0 53M downloads/mo #744 most downloaded on Packagist phpmyadmin/sql-parser

What this package is like to depend on

Last release 9 months ago

31 Oct 2025

Ships fairly regularly

a new release about every 3 months

Nearly every release is documented

notes for 93 of 93 stable releases

Nothing withdrawn

no release was ever pulled

11 years old

93 releases · first in 2015

1 release in the last 12 months

see the full history below

Release timeline

93 releases · Aug 2015 to Oct 2025
2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 60 of 93
  1. 6.0.0 31 Oct 2025
    Release notes

    Added

    • #550: Create the StatementInfo class
    • #549: Add leftOperand, operator and rightOperand properties to the Condition component

    Changed

    • Add native type declarations
    • #365: Change Component abstract class to an interface
    • #368: Rename class members to use camel case format
    • #384: Change Context::load() error handling from throwing an exception to returning a boolean value
    • #454: Move Misc::getAliases() into SelectStatement::getAliases()
    • #480: Split up Context::escape()
    • #470: Restrict parameter type of OptionsArray::merge
    • #483: Split build into buildAll
    • #505: Change some static properties into class constants
    • #504: Change TokensList class to add the buildFromArray method
    • #507: Replace the Token::TYPE_* constants with the TokenType enum
    • #543: Extract parse method from components into Parsers

    Removed

    • Drop support for PHP 7.2, 7.3, 7.4, 8.0 and 8.1
    • #471: Drop USE_UTF_STRINGS constant
    • #482: Drop $options parameter from Component::build
    • #585: Drop Utils\Routine class
    • #594: Remove alternative executable files
    Open source →
    Release notes

    Added

    • #550: Create the StatementInfo class
    • #549: Add leftOperand, operator and rightOperand properties to the Condition component

    Changed

    • Add native type declarations
    • #365: Change Component abstract class to an interface
    • #368: Rename class members to use camel case format
    • #384: Change Context::load() error handling from throwing an exception to returning a boolean value
    • #454: Move Misc::getAliases() into SelectStatement::getAliases()
    • #480: Split up Context::escape()
    • #470: Restrict parameter type of OptionsArray::merge
    • #483: Split build into buildAll
    • #505: Change some static properties into class constants
    • #504: Change TokensList class to add the buildFromArray method
    • #507: Replace the Token::TYPE_* constants with the TokenType enum
    • #543: Extract parse method from components into Parsers

    Removed

    • Drop support for PHP 7.2, 7.3, 7.4, 8.0 and 8.1
    • #471: Drop USE_UTF_STRINGS constant
    • #482: Drop $options parameter from Component::build
    • #585: Drop Utils\Routine class
    • #594: Remove alternative executable files
    Open source →
  2. 5.11.1 20 Jul 2025
    Release notes

    Added

    • Add context files for MySQL 9.2, MySQL 9.3 and MariaDB 12.1 (#628)
    • Add context files for MariaDB 11.8 and MariaDB 12.0 (#620)

    Fixed

    • Fix Window function handling that failed because of "OVER" keyword case-sensitive comparison (#623)
    Open source →
    Release notes

    Added

    • Add context files for MySQL 9.2, MySQL 9.3 and MariaDB 12.1 (#628)
    • Add context files for MariaDB 11.8 and MariaDB 12.0 (#620)

    Fixed

    • Fix Window function handling that failed because of "OVER" keyword case-sensitive comparison (#623)
    Open source →
  3. 5.11.0 22 Feb 2025
    Release notes

    Added

    • Add Translator::setLocale() method (#599)

    Fixed

    • Fix FORCE INDEX not been parsed correctly (#614)
    • Fix parsing of ADD UNIQUE and ADD UNIQUE KEY for ALTER TABLE statements (#611)
    Open source →
    Release notes

    Added

    • Add Translator::setLocale() method (#599)

    Fixed

    • Fix FORCE INDEX not been parsed correctly (#614)
    • Fix parsing of ADD UNIQUE and ADD UNIQUE KEY for ALTER TABLE statements (#611)
    Open source →
  4. 5.10.3 19 Jan 2025
    Release notes
    • Add "RECURSIVE" on build() for "WITH RECURSIVE" on the WithStatement class (#605)
    • Fix for quadratic complexity in certain queries, which could have caused long execution times.
      • Thanks to Maximilian Krög @MoonE for this fix to help improve security.
    Open source →
    Release notes

    Fixed

    • Add "RECURSIVE" on build() for "WITH RECURSIVE" on the WithStatement class (#605)
    • Fix for quadratic complexity in certain queries, which could have caused long execution times. Thanks to Maximilian Krög (GitHub user MoonE) for this fix to help improve security.
    Open source →
  5. 5.10.2 05 Dec 2024
    Release notes

    Added

    • Add MariaDb 11.6 and 11.7 contexts (#601)
    • Add context files for MySQL 9.1 (#603)
    Open source →
    Release notes

    Added

    • Add MariaDb 11.6 and 11.7 contexts (#601)
    • Add context files for MySQL 9.1 (#603)
    Open source →
  6. 5.10.1 10 Nov 2024
    Release notes

    Fixed

    • Fix parsing of ALTER TABLE … RENAME KEY (#580)
    • Fix parsing table names that start with "e1" (#578)
    • Improve handling of negative and overflowed offsets on TokensList (#582)
    • Fix parsing of queries with 'AND' (#590)
    • Fix C style comments with two asterisks (#597)
    • Fix parsing of SRID in column definition (#595)
    Open source →
    Release notes

    Fixed

    • Fix parsing of ALTER TABLE … RENAME KEY (#580)
    • Fix parsing table names that start with "e1" (#578)
    • Improve handling of negative and overflowed offsets on TokensList (#582)
    • Fix parsing of queries with 'AND' (#590)
    • Fix C style comments with two asterisks (#597)
    • Fix parsing of SRID in column definition (#595)
    Open source →
  7. 5.10.0 29 Aug 2024
    Release notes
    • Fix parsing of UPDATE ... SET (#577)
    • Fix parsing of WITH PARSER (#563)
    • Fix context files for MySQL and MariaDB (#572) (#576)
    • Allow using ::class keyword to load a context (#571)
    • Fix query flags for lower-case functions (#564)
    • Improve context files by using constants (#570)
    • Fix case when a condition is not parsed correctly (#560)
    • Support parsing KILL statements (#556)
    • Fix replace clause of select statement with FOR UPDATE (#555)
    • Add support for ALTER FUNCTION and ALTER PROCEDURE statements (#553)
    Open source →
    Release notes
    • Fix parsing of UPDATE ... SET (#577)
    • Fix parsing of WITH PARSER (#563)
    • Fix context files for MySQL and MariaDB (#572) (#576)
    • Allow using ::class keyword to load a context (#571)
    • Fix query flags for lower-case functions (#564)
    • Improve context files by using constants (#570)
    • Fix case when a condition is not parsed correctly (#560)
    • Support parsing KILL statements (#556)
    • Fix replace clause of select statement with FOR UPDATE (#555)
    • Add support for ALTER FUNCTION and ALTER PROCEDURE statements (#553)
    Open source →
  8. 5.9.1 13 Aug 2024
    Release notes
    • Allow parsing ALTER TABLE statement with column check constraint (#554)
    • Add support for PHPUnit 10 (#573)
    Open source →
    Release notes
    • Allow parsing ALTER TABLE statement with column check constraint (#554)
    • Add support for PHPUnit 10 (#573)
    Open source →
  9. 5.9.0 20 Jan 2024
    Release notes
    • Fix keywords not being recognized as table alias (#496)
    • Add bin/sql-parser executable file (#517)
    • Fix bind parameter in LIMIT OFFSET (#498)
    • Fix using ? as a parameter (#515)
    Open source →
    Release notes
    • Fix keywords not being recognized as table alias (#496)
    • Add bin/sql-parser executable file (#517)
    • Fix bind parameter in LIMIT OFFSET (#498)
    • Fix using ? as a parameter (#515)
    Open source →
  10. 5.8.2 19 Sep 2023
    Release notes

    Fixed ALTER .. MODIFY ... ENUM failed! #511

    Open source →
    Release notes
    • Fix a regression with the ALTER operation (#511)
    Open source →
  11. 5.8.1 15 Sep 2023
    Release notes
    • Fix := was not recognized as an operator just like = (#306)
    • Fix ALTER TABLE … MODIFY … ENUM('<reserved_keyword>') is being wrongly parsed (#234)
    • Fix ALTER TABLE … MODIFY … ENUM('<reserved_keyword>') is being wrongly parsed (#478)
    • Fix MariaDB window function with alias gives bad linting errors (#283)
    • Fix unrecognized keyword COLLATE in WHERE clauses (#491)
    • Fix invalid hexadecimal prefix 0X (#508)
    Open source →
  12. 5.8.0 05 Jun 2023
    Release notes
    • Fix ALTER EVENT RENAME TO to use expression instead of var (#419)
    • Fix incorrect order of operations to parse table/db called `` (#422)
    • Fix ALTER EVENT statement with DEFINER=user modifier fails to be parsed (#418)
    • Fix GROUP BY modifier WITH ROLLUP is treated as a syntax error and prevents export of SQL query results
    • Fix TokensList::getPrevious was not able to reach very first token (#428)
    • Fix TransactionStatement::build() "Call to a member function build() on null" when the transaction has no end
    • Fix MySQL-specific commands parsing (#226)
    • Fix ALTER TABLE … RENAME COLUMN … TO … is not understood by the parser/linter (#430)
    • Fix PARTITION syntax errors (#377)
    • Fix ALTER USER when used with IDENTIFIED WITH/VIA/BY option (#431)
    • Fix COALESCE PARTITION in ALTER TABLE, rather than COALESCE (#323)
    • Support ALGORITHM and LOCK options in ALTER TABLE statements (#319)
    • Fix way end of functions, procedures and triggers' bodies is identified (#438)
    • Fix enclosed by is not recognized by the parser when fields is in lower case (#236)
    • Support KEY on CreateDefinition (#330)
    • Fix CALL statements parsing (#372)
    • Implement support for LEFT JOIN, JOIN, INNER JOIN on UpdateStatement (#260)
    • Implement support for TABLE and REPLACE statements on DESCRIBE statements
    • Fix DESCRIBE to allow a schema.table syntax (#445)
    • Fix parsing insert queries with functions trims commas (#450)
    Open source →
  13. 5.7.0 25 Jan 2023
    Release notes
    • Performance improvement to use less the nextToken() function (#397)
    • Lexer - Solving ambiguity on function keywords (#385)
    • Implement ALTER EVENT (#404)
    • Add ALTER EVENT keywords (#404)
    • Drop PHP 7.1 support
    • Fix the alter operation table options RENAME INDEX x TO y (#405)
    • Fix CreateStatement function's options (#406)
    • Fix a PHP notice on Linter using ANALYZE (#413)
    Open source →
  14. 5.6.0 02 Jan 2023
    Release notes
    • Add missing return types annotations
    • Improve the WITH statements parser (#363)
    • Add support for passing Context::SQL_MODE* constants to Context::setMode method
    • Fix additional body tokens issue with CREATE VIEW statements (#371)
    • Exclude from composer vendor bundle /tests and /phpunit.xml.dist
    • Support table structure with COMPRESSED columns (#351)
    • Add #[\AllowDynamicProperties] on Statement and Expression classes for PHP 8.2 support
    • Support ALTER queries of PARTITIONS (#329)
    • Change Context::load() error handling to returning a boolean value instead of throwing a LoaderException (#384)
    • Fixed differentiating between ANALYZE and EXPLAIN statements (#386)
    • Added "NOT" to the select options (#374)
    • Implement the EXPLAIN Parser (#389)
    • Context: Updated contexts to contain multipoint and multipolygon data types (#393)
    • Support more keywords on Expression component (#399)
    • Fix PHP 8.3 failing tests (#400)
    Open source →
  15. 5.5.0 09 Dec 2021
    Release notes
    • Add WITH support (#165, #331)
    • Fixed BufferedQuery when it has an odd number of backslashes in the end (#340)
    • Fixed the issue that ignored the body tokens when creating views with union (#343)
    • Fixed parser errors on "ALTER TABLE" statements to add columns with SET type (#168)
    • Fixed PHP 8.1 fatal errors on classes that "implements ArrayAccess"
    • Add new contexts for MariaDB 10.4, 10.5, 10.6 (#328)
    • Fixed parser errors for "ALTER USER" with options (#342)
    • Fixed handling of the procedures and functions's options where part of the body (#339)
    • Fix PHP notice "Undefined index: name in src/Components/Key.php#206" for table keys using expressions (#347)
    • Added support for MySQL 8.0 table structure KEY expressions (#347)
    • Added support for KEY order (ASC/DESC) (#296)
    • Added missing KEY options for MySQL and MariaDB (#348)
    • Added support for ENFORCED and NOT ENFORCED on table create queries (#341)
    • Performance improvement to use less the "ord()" function (#352)
    • Added support for OVER() with an alias (AS) (#197)
    Open source →
  16. 5.4.2 05 Feb 2021
    Release notes
    • Added check for quoted symbol to avoid parser error in case of keyword (#317)
    • Allow PHP 8
    Open source →
  17. 5.4.1 15 Oct 2020
    Release notes
    • Fix array_key_exists warning when parsing a "DEFAULT FALSE" token (#299)
    Open source →
  18. 5.4.0 08 Oct 2020
    Release notes
    • EXISTS is also a function. (#297)
    • Fix lexer to not allow numbers with letters (#300)
    • Add support for INVISIBLE keyword (#292)
    • Fix the "$" might be a character used in a name (#301)
    • Fix use stream_select instead of non-blocking STDIN (#309)
    • Add select validation to a create view statement (#310)
    Open source →
  19. 5.3.1 21 Mar 2020
    Release notes
    • Revert some changes with the understanding of ANSI_QUOTES mode and identifiers
    • Suggest motranslator 5.0 in README
    Open source →
  20. 5.3.0 20 Mar 2020
    Release notes
    • Stop instanciating an object to check its class name. (#290)
    • Replace sscanf by equivalent native PHP functions because sscanf can be disabled for security reasons. (#270)
    • Allow phpunit 9
    • Allow phpmyadmin/motranslator 5.0
    • Fix for php error when "INSERT INTO x SET a = 1" is "INSERT INTO x SET = 1" (#295)
    • Fixed lexer fails to detect "*" as a wildcard (#288)
    • Fixed ANSI_QUOTES support (#284)
    • Fixed parser mistakes with comments (#156)
    Open source →
  21. 5.2.0 07 Jan 2020
    Release notes
    • Fix ALTER TABLE ... PRIMARY/UNIQUE KEY results in error (#267)
    • Prevent overwrite of offset in Limit clause by parenthesis (#275)
    • Allow SCHEMA to be used in CREATE Database statement (#231)
    • Add missing options in SET statement (#255)
    • Add support for DROP USER statement (#259)
    • Fix php error "undefined index" when replacing a non existing clause (#249)
    Open source →
  22. 5.1.0 12 Nov 2019
    Release notes
    • Fix for PHP deprecations messages about implode for php 7.4+ (#258)
    • Parse CHECK keyword on table definition (#264)
    • Parse truncate statement (#221)
    • Fix wrong parsing of partitions (#265)
    Open source →
  23. 5.0.0 10 May 2019
    Release notes
    • Drop support for PHP 5.3, PHP 5.4, PHP 5.5, PHP 5.6, PHP 7.0 and HHVM
    • Enable strict mode on PHP files
    • Fix redundant whitespaces in build() outputs (#228)
    • Fix incorrect error on DEFAULT keyword in ALTER operation (#229)
    • Fix incorrect outputs from Query::getClause (#233)
    • Add support for reading an SQL file from stdin
    • Fix for missing tokenize-query in Composer's vendor/bin/ directory
    • Fix for PHP warnings with an incomplete CASE expression (#241)
    • Fix for error message with multiple CALL statements (#223)
    • Recognize the question mark character as a parameter (#242)
    Open source →
  24. 4.7.3 09 Dec 2021
    Release notes
    • Fixed BufferedQuery when it has an odd number of backslashes in the end (#340)
    • Fixed the issue that ignored the body tokens when creating views with union (#343)
    • Fixed parser errors on "ALTER TABLE" statements to add columns with SET type (#168)
    • Fixed parser errors for "ALTER USER" with options (#342)
    • Fixed handling of the procedures and functions's options where part of the body (#339)
    • Fix PHP notice "Undefined index: name in src/Components/Key.php#206" for table keys using functions (#347)
    • Fix MySQL 8.0 table structure KEY expression not recognized (#347)
    • Fix KEY order (ASC/DESC) not part of the KEY definition (#296)
    • Fix missing KEY options for MySQL and MariaDB (#348)
    • Fix validation error when using ENFORCED option (#341)
    Open source →
  25. 4.7.2 05 Feb 2021
    Release notes
    • Added check for quoted symbol to avoid parser error in case of keyword (#317)
    • Adjust PHP version constraint to not support PHP 8.0 on the 4.7 series (5.x series supports it)
    Open source →
  26. 4.7.1 15 Oct 2020
    Release notes
    • Fix array_key_exists warning when parsing a "DEFAULT FALSE" token (#299)
    Open source →
  27. 4.7.0 08 Oct 2020
    Release notes
    • EXISTS is also a function. (#297)
    • Fix lexer to not allow numbers with letters (#300)
    • Add support for INVISIBLE keyword (#292)
    • Fix the "$" might be a character used in a name (#301)
    • Fix use stream_select instead of non-blocking STDIN (#309)
    • Add select validation to a create view statement (#310)
    Open source →
  28. 4.6.1 21 Mar 2020
    Release notes
    • Revert some changes with the understanding of ANSI_QUOTES mode and identifiers
    • Suggest motranslator 4.0 in README
    Open source →
  29. 4.6.0 20 Mar 2020
    Release notes
    • Stop instanciating an object to check its class name. (#290)
    • Replace sscanf by equivalent native PHP functions because sscanf can be disabled for security reasons. (#270)
    • Allow phpunit 7
    • Fix for php error when "INSERT INTO x SET a = 1" is "INSERT INTO x SET = 1" (#295)
    • Fixed lexer fails to detect "*" as a wildcard (#288)
    • Fixed ANSI_QUOTES support (#284)
    • Fixed parser mistakes with comments (#156)
    Open source →
  30. 4.5.0 07 Jan 2020
    Release notes
    • Fix ALTER TABLE ... PRIMARY/UNIQUE KEY results in error (#267)
    • Prevent overwrite of offset in Limit clause by parenthesis (#275)
    • Allow SCHEMA to be used in CREATE Database statement (#231)
    • Add missing options in SET statement (#255)
    • Add support for DROP USER statement (#259)
    • Fix php error "undefined index" when replacing a non existing clause (#249)
    Open source →
  31. 4.4.0 12 Nov 2019
    Release notes
    • Fix for PHP deprecations messages about implode for php 7.4+ (#258)
    • Parse CHECK keyword on table definition (#264)
    • Parse truncate statement (#221)
    • Fix wrong parsing of partitions (#265)
    Open source →
  32. 4.3.2 03 Jun 2019
    Release notes

    Backport fixes from 5.0.0 to QA branch:

    • Fix redundant whitespaces in build() outputs (#228)
    • Fix incorrect error on DEFAULT keyword in ALTER operation (#229)
    • Fix incorrect outputs from Query::getClause (#233)
    • Add support for reading an SQL file from stdin
    • Fix for missing tokenize-query in Composer's vendor/bin/ directory
    • Fix for PHP warnings with an incomplete CASE expression (#241)
    • Fix for error message with multiple CALL statements (#223)
    • Recognize the question mark character as a parameter (#242)
    Open source →
  33. v4.3.1 05 Jan 2019
    Release notes
    • Fixed incorrect error thrown on DEFAULT keyword in ALTER statement (#218)
    Open source →
  34. v4.3.0 25 Dec 2018
    Release notes
    • Add support for aliases on CASE expressions (#162 and #192)
    • Add support for INDEX hints in SELECT statement (#199)
    • Add support for LOCK and UNLOCK TABLES statement (#180)
    • Add detection of extraneous comma in UPDATE statement (#160)
    • Add detection of a missing comma between two ALTER operations (#189)
    • Add missing support for STRAIGHT_JOIN (#196)
    • Add support for end options in SET statement (#190)
    • Fix building of RENAME statements (#201)
    • Add support for PURGE statements (#207)
    • Add support for COLLATE keyword (#190)
    Open source →
  35. v4.2.5 31 Oct 2018
    Release notes
    • Fix issue with CREATE OR REPLACE VIEW.
    Open source →
  36. v4.2.4 06 Dec 2017
    Release notes
    • Fix parsing of CREATE TABLE with per field COLLATE.
    • Improved Context::loadClosest to better deal with corner cases.
    • Localization updates.
    Open source →
  37. v4.2.3 10 Oct 2017
    Release notes
    • Make mbstring extension optional (though Symfony polyfill).
    • Fixed build CREATE TABLE query with PARTITIONS having ENGINE but not VALUES.
    Open source →
  38. v4.2.2 28 Sep 2017
    Release notes
    • Added support for binding parameters.
    Open source →
  39. v4.2.1 08 Sep 2017
    Release notes
    • Fixed minor bug in Query::getFlags.
    • Localization updates.
    Open source →
  40. v4.2.0 30 Aug 2017
    Release notes
    • Initial support for MariaDB SQL contexts.
    • Add support for MariaDB 10.3 INTERSECT and EXCEPT.
    Open source →
  41. v4.1.10 21 Aug 2017
    Release notes
    • Use custom LoaderException for context loading errors.
    Open source →
  42. v4.1.9 12 Jul 2017
    Release notes
    • Various code cleanups.
    • Improved error handling of several invalid statements.
    Open source →
  43. v4.1.8 09 Jul 2017
    Release notes
    • Fixed parsing SQL comment at the end of query.
    • Improved handing of non utf-8 strings.
    • Added query flag for SET queries.
    Open source →
  44. v4.1.7 06 Jun 2017
    Release notes
    • Fixed setting combination SQL Modes.
    Open source →
  45. v4.1.6 01 Jun 2017
    Release notes
    • Fixed building query with GROUP BY clause.
    Open source →
  46. v4.1.5 15 May 2017
    Release notes
    • Fixed invalid lexing of queries with : in strings.
    • Properly handle maximal length of delimiter.
    Open source →
  47. v4.1.4 05 May 2017
    Release notes
    • Fixed wrong extract of string tokens with escaped characters.
    • Properly handle lowercase begin statement.
    Open source →
  48. v4.1.3 06 Apr 2017
    Release notes
    • Added support for DELETE ... JOIN clauses.
    • Changed BufferedQuery to include comments in output.
    • Fixed parsing of inline comments.
    Open source →
  49. v4.1.2 20 Feb 2017
    Release notes
    • Coding style improvements.
    • Chinese localization.
    • Improved order validatin for JOIN clauses.
    • Improved pretty printing of JOIN clauses.
    • Added support for LOAD DATA statements.
    Open source →
  50. v4.1.1 07 Feb 2017
    Release notes
    • Localization using phpmyadmin/motranslator is now optional.
    • Improved testsuite.
    • Better handling of non upper cased not reserved keywords.
    • Minor performance and coding style improvements.
    Open source →
  51. v4.1.0 23 Jan 2017
    Release notes
    • Use phpmyadmin/motranslator to localize messages.
    Open source →
  52. v4.0.1 23 Jan 2017
    Release notes
    • Fixed CLI wrappers for new API.
    • Fixed README for new API.
    Open source →
  53. v4.0.0 23 Jan 2017
    Release notes
    • Added PhpMyAdmin namespace prefix to follow PSR-4.
    Open source →
  54. v3.4.17 20 Jan 2017
    Release notes
    • Coding style fixes.
    • Fixed indentation in HTML formatting.
    • Fixed parsing of unterminated variables.
    • Improved comments lexing.
    Open source →
  55. v3.4.16 06 Jan 2017
    Release notes
    • Coding style fixes.
    • Properly handle operators AND, NOT, OR, XOR, DIV, MOD
    Open source →
  56. v3.4.15 02 Jan 2017
    Release notes
    • Fix return value of Formatter.toString() when type is text
    • Fix parsing of FIELDS and LINES options in SELECT..INTO
    • PHP 7.2 compatibility.
    • Better parameter passing to query formatter.
    Open source →
  57. v3.4.14 30 Nov 2016
    Release notes
    • Improved parsing of UNION queries.
    • Recognize BINARY function.
    Open source →
  58. v3.4.13 15 Nov 2016
    Release notes
    • Fix broken incorrect clause order detection for Joins.
    • Add parsing of end options in Select statements.
    Open source →
  59. v3.4.12 09 Nov 2016
    Release notes
    • Added verification order of SELECT statement clauses.
    Open source →
  60. v3.4.11 25 Oct 2016
    Release notes
    • Fixed parsing of ON UPDATE option in field definition of TIMESTAMP type with precision
    • Fixed parsing of NATURAL JOIN, CROSS JOIN and related joins.
    • Fixed parsing of BEGIN/END labels.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive