grammars-v4 VS JSqlParser

Compare grammars-v4 vs JSqlParser and see what are their differences.

grammars-v4

Grammars written for ANTLR v4; expectation that the grammars are free of actions. (by antlr)

JSqlParser

JSqlParser parses an SQL statement and translate it into a hierarchy of Java classes. The generated hierarchy can be navigated using the Visitor Pattern (by JSQLParser)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
grammars-v4 JSqlParser
29 4
9,786 4,956
1.2% 2.1%
9.6 9.2
2 days ago 5 days ago
ANTLR Java
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

grammars-v4

Posts with mentions or reviews of grammars-v4. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-23.

JSqlParser

Posts with mentions or reviews of JSqlParser. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-07-29.
  • Semantic Diff for SQL
    7 projects | news.ycombinator.com | 29 Jul 2022
    I wonder if this is a topical thread to check if anyone is aware of a Java based solution to parse a CREATE VIEW statement to get a mapping between the view columns and the corresponding source table columns. I checked out jsqlparser[0] and it does produce an AST which can be parsed using the visitor-pattern[1] but was wondering if there is a more "out-of-the-box" solution. Due to various reasons, querying the database information schema is not an option I can pursue.

    [0]: https://github.com/JSQLParser/JSqlParser

    [1]: https://en.wikipedia.org/wiki/Visitor_pattern

  • Open Source SQL Parsers
    17 projects | dev.to | 8 Oct 2021
    JSQLParser can parse multiple SQL dialects like MySQL, Postgres and Oracle. The grammar can be modified to support other SQL dialects.
  • Let's write a compiler, part 5: A code generator
    14 projects | news.ycombinator.com | 19 Aug 2021
  • Racket v8.0
    7 projects | news.ycombinator.com | 14 Feb 2021
    Interesting coincidence - I'm working on a parser that parses the AST produced by JSqlParser[0] for a create view statement to generate mapping between the columns of a view and the columns of its underlying table. It is an interesting example of having to use the visitor pattern[1].

    [0]: https://github.com/JSQLParser/JSqlParser

What are some alternatives?

When comparing grammars-v4 and JSqlParser you can also consider the following projects:

ANTLR - ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

Apache Calcite - Apache Calcite

tree-sitter-sql - SQL grammar for tree-sitter

sqlglot - Python SQL Parser and Transpiler

lezer-snowsql

zetasql - ZetaSQL - Analyzer Framework for SQL

rewrite - Automated mass refactoring of source code.

sqlparse - A non-validating SQL parser module for Python

tree-sitter-sql - SQL syntax highlighting for tree-sitter

Presto - The official home of the Presto distributed SQL query engine for big data

go-mysql-server - A MySQL-compatible relational database with a storage agnostic query engine. Implemented in pure Go.