sqlschm
tree-sitter-sql
sqlschm | tree-sitter-sql | |
---|---|---|
2 | 6 | |
5 | 132 | |
- | - | |
2.4 | 8.5 | |
about 1 year ago | 14 days ago | |
Python | JavaScript | |
MIT License | MIT License |
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.
sqlschm
-
Writing a Python SQL engine from scratch
> The main reason why I ended up building a SQL engine was...just for entertainment. It's been fun learning about all the things
I also wrote an SQL parser [1] for SQLite schema. This was mainly for fun, but also to support the specificities of SQLite schema. I was not happy with the result of other parsers (including sqlglot).
[1] https://github.com/coast-team/sqlschm
-
Open Source SQL Parsers
SQL is a mess. It is difficult to find a parser that fulfills your needs.
A month ago, I needed a parser to parse SQLite schemas. SQLite has some edge case and I needed a lossless parsing to detect these edge cases.
I finally wrote my own parser [1] to fullfill my needs and to have some fun. This is for a POC project.
[1] https://github.com/coast-team/sqlschm
tree-sitter-sql
-
How to extend treesitter SQL highlighting with custom keywords?
Which grammar are you using? https://github.com/DerekStride/tree-sitter-sql supports backticks. This is the one that is used by nvim-treesitter.
-
Parsing SQL with Rust
A complete grammar of the SQL language is rather large, as can be seen by this grammar https://github.com/DerekStride/tree-sitter-sql/blob/main/grammar.js that is 2000 lines of code.
-
Writing a SQL LS in Rust - Looking for Coding Companions.
Alternatively, you could use a tree-sitter parser, such as https://github.com/DerekStride/tree-sitter-sql , which would provide fast incremental parses (but may result in a less detailed AST).
- Treesitter Capturing ERROR Nodes
- Open Source SQL Parsers
What are some alternatives?
duckdb - DuckDB is an in-process SQL OLAP Database Management System
grammars-v4 - Grammars written for ANTLR v4; expectation that the grammars are free of actions.
pgsqlite - Load sqlite databases into Postgres databases
prql - PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement
tree-sitter-sql - SQL syntax highlighting for tree-sitter
nvim-treesitter - Nvim Treesitter configurations and abstraction layer
lezer-snowsql
tree-sitter-sql - SQL grammar for tree-sitter
tree-sitter-racket - Racket grammar for tree-sitter