25 Repos
Processes SQL queries into abstract syntax trees to enable programmatic analysis and rewriting of database commands.
Distinct from SQL Statement Parsing: None of the candidates cover the specific concept of AST generation for routing and execution logic.
Explore 25 awesome GitHub repositories matching data & databases · SQL Abstract Syntax Tree Parsing. Refine with filters or upvote what's useful.
ShardingSphere is a distributed SQL database middleware that provides sharding, read-write splitting, and distributed transaction management for relational databases. It functions as a layer that intercepts SQL queries to distribute data across multiple physical database instances for horizontal scaling. The project is distinguished by its ability to operate as either a standalone transparent database proxy or via direct integration as a JDBC driver. It features a SQL dialect translator that parses queries into abstract syntax trees to convert syntax between different database engines, enabli
Analyzes SQL statements into structured abstract syntax trees to implement custom routing and execution logic.
sqlc is a SQL compiler and code generator that creates type-safe database client code from raw SQL queries. It transforms SQL statements into typed definitions and functions, eliminating the need for manual row mapping between database results and application structures. The tool ensures compile-time safety by validating SQL queries against the database schema before the application is run. This workflow integrates the database schema directly into the application code, deriving types from the underlying SQL definitions to prevent runtime errors. The system utilizes AST-based query analysis
Parses raw SQL queries into abstract syntax trees for structural analysis and type inference.
SQLFluff is a multi-dialect SQL linter, formatter, and style guide enforcer. It functions as a parser and analyzer that converts SQL scripts into structured trees to validate syntax, identify logical components, and enforce consistent capitalization, aliasing, and layout conventions across various database dialects. The system is specifically designed to handle templated SQL, providing the ability to analyze, parse, and lint files containing macros or placeholders. It uses dummy-parameter rendering and source mapping to validate the style and correctness of dynamic code before it is rendered
Converts SQL code into abstract syntax trees to enable programmatic analysis and rendering in various formats.
sqlglot is a SQL parser and transpiler that represents queries as abstract syntax trees to enable structural analysis, modification, and semantic transformation. It functions as a dialect translator and query optimizer, converting SQL code between different database engines and simplifying syntax trees through rule-based normalization. The project provides a framework for defining custom SQL dialects by overriding tokenizers, parsers, and generators. It includes a lineage analyzer to track data flow from source tables through complex queries to identify the origin of specific columns. Additi
Parses raw SQL strings into structured abstract syntax trees that capture the semantics of the statement.
Yearning is a MySQL SQL audit platform and database change management system. It provides a governance framework for reviewing, approving, and auditing SQL statements executed against MySQL databases. The platform features an AI-powered SQL optimizer that suggests performance improvements and converts natural language requests into executable SQL code. It manages database changes through an approval-based workflow engine that includes automated rollback generation and rule-based syntax validation. The system covers role-based access control, security compliance with multi-factor authenticati
Evaluates submitted SQL against predefined security and performance constraints using automated checkers.
Soar is a suite of specialized tools designed for analyzing MySQL performance, advising on indexing, and optimizing SQL syntax. It functions as a performance analyzer, index advisor, and query optimizer to identify bottlenecks and suggest structural improvements for faster execution. The project distinguishes itself through a system for rewriting SQL statements into optimized equivalent versions using custom heuristic rules and patterns. It also features a dedicated index advisor that evaluates query patterns and database metadata to recommend the creation of new indexes. Its broader capabil
Translates various database dialects into abstract syntax trees for structural analysis and rewriting.
ToyDB is a distributed SQL database that provides a system for storing and querying data across multiple nodes. It focuses on maintaining strong consistency and fault tolerance through the implementation of a distributed consensus algorithm. The project distinguishes itself by supporting historical data versioning, enabling time-travel queries to retrieve the state of the database from a specific point in the past. It utilizes multi-version concurrency control to manage ACID transactions and ensure data integrity during concurrent operations. The system covers relational data modeling with t
Processes SQL queries into abstract syntax trees to enable programmatic analysis and execution.
Standard README ist ein Markdown-Dokumentationsstandard und eine Spezifikation zur Organisation von Projektmetadaten und Anleitungen. Es fungiert als Open-Source-Governance-Framework, das einen formalen Satz von Regeln und Vorlagen etabliert, um sicherzustellen, dass Projektinformationen über verschiedene Repositories hinweg vorhersehbar und konsistent bleiben. Das Projekt bietet einen Validierer für Dokumentations-Compliance, um zu prüfen, ob eine README diesen vordefinierten Formatierungsstandards entspricht. Es enthält Tools zur Generierung von README-Vorlagen zur Erstellung von Basis-Dokumentationsdateien und ein System zur Signalisierung der Spezifikations-Compliance durch die Verwendung visueller Badges.
Verifies that project README files follow a predefined specification to ensure high documentation quality.
JSqlParser ist eine Java-Bibliothek für SQL-Abfrage-Parsing, die rohe SQL-Strings in eine strukturierte Hierarchie stark typisierter Java-Objekte konvertiert. Sie bietet die Möglichkeit, Datenbankabfragen programmatisch zu analysieren und zu manipulieren, indem sie diese als Baum von Objekten darstellt. Die Bibliothek unterstützt sowohl das Parsen von vorhandenem SQL-Text als auch die programmatische Generierung neuer Anweisungen durch eine Fluent-API. Sie enthält Mechanismen zur Transformation von Abfragebäumen und zur Serialisierung strukturierter Objektmodelle zurück in formatierten SQL-Text. Zusätzliche Funktionen umfassen die Datenbank-Schema-Analyse, wie die Extraktion von Tabellennamen zur Abbildung von Datenabhängigkeiten, sowie die SQL-Syntax-Validierung. Der Parser ist konfigurierbar, um verschiedene Syntax-Dialekte zu handhaben, und enthält eine fehlertolerante Wiederherstellung, um die Verarbeitung von Skripten nach dem Auftreten ungültiger Token fortzusetzen.
Provides mechanisms to check database queries for correctness and handle syntax errors during the processing of SQL scripts.
GreptimeDB is a distributed, open-source time-series database built for unified observability. It stores and queries metrics, logs, and traces together in a single columnar engine, supporting both SQL and PromQL for analysis. The database is designed as a Kubernetes-native operator with a decoupled compute and storage architecture, enabling horizontal scaling and multi-region deployment. What distinguishes GreptimeDB is its role as a multi-protocol ingestion gateway, accepting data through OpenTelemetry, Prometheus Remote Write, InfluxDB, Loki, Elasticsearch, Kafka, and MQTT protocols without
Provides an endpoint that parses SQL statements into abstract syntax trees returned as JSON.
Cortex is an open-source, horizontally scalable metrics platform that ingests, stores, and queries Prometheus-compatible time-series data with multi-tenant isolation. It accepts metrics via Prometheus remote write and OpenTelemetry, executes PromQL queries against both recent and historical data, and provides a Prometheus-compatible alerting and recording rule engine with an integrated Alertmanager. The system is built as a set of independently scalable microservices that use hash-ring-based sharding, gossip-based cluster membership, and tenant-aware object storage to distribute workloads acro
Validates PromQL and Alertmanager configuration syntax before applying changes.
SQLAdvisor ist ein Tool zur Datenbank-Performance-Optimierung und Index-Empfehlung, das darauf ausgelegt ist, die Abfragelatenz zu reduzieren. Es fungiert als Query-Optimizer, der SQL-Ausführungsmuster analysiert, um fehlende Indizes zu identifizieren und umsetzbare Ratschläge zur Performance-Optimierung zu geben. Das System konzentriert sich auf automatisiertes Index-Management und Datenbank-Query-Tuning. Es identifiziert die Grundursachen für langsame Datenbankantworten und empfiehlt die effektivsten Indizes, um die Datenabrufgeschwindigkeit zu verbessern. Zu den Funktionen gehören die Analyse von SQL-Parse-Trees und Join-Mustern unter Verwendung von Kostenmodellen und heuristikbasierten Auswahlen, um Indizes zu priorisieren. Das Tool integriert schema-bewusste Optimierung, um redundante Index-Empfehlungen zu vermeiden und gleichzeitig die Scan-Kosten zu senken.
Converts raw SQL queries into abstract syntax trees to identify filter predicates and join columns for analysis.
ptpython ist ein erweitertes interaktives Python-REPL und eine asynchrone Konsole, die auf der prompt-toolkit-Bibliothek aufbaut. Sie bietet eine anpassbare Befehlszeilenschnittstelle zur Ausführung von Python-Code mit Unterstützung für mehrzeilige Bearbeitung, Autovervollständigung und Syntax-Highlighting. Die Umgebung unterstützt Top-Level-Await-Statements und asynchrone Ausführung über eine integrierte Event-Loop. Sie erlaubt umfangreiche Interface-Anpassungen, einschließlich konfigurierbarer Tastenkürzel für Vi- oder Emacs-Navigation und personalisierter Farbschemata. Die Shell enthält Funktionen für Echtzeit-Syntaxvalidierung und die Ausführung von System-Shell-Befehlen, ohne die Sitzung verlassen zu müssen. Sie kann als eingebettetes REPL in andere Anwendungen integriert oder dazu verwendet werden, externe Shells zu wrappen, um zusätzliche Magic-Funktionen bereitzustellen.
Implements real-time syntax validation that highlights errors with cursor warnings before code is executed.
Pest ist eine Rust-Parsing-Bibliothek und ein automatischer Parser-Generator, der formale Grammatikdefinitionen in funktionale Parser umwandelt. Er ist auf Parsing Expression Grammars (PEG) spezialisiert, um komplexe Textmuster zu erkennen und zu strukturieren, und bietet ein System für kontextfreies Grammatik-Parsing. Die Bibliothek implementiert Zero-Copy-Tokenisierung und statische Grammatik-Kompilierung, um den Laufzeit-Overhead zu reduzieren. Sie unterstützt no-std-Laufzeitkompatibilität, wodurch der Parser für eingebettete oder Bare-Metal-Umgebungen kompiliert werden kann, in denen keine Standardbibliothek verfügbar ist. Das Projekt deckt eine Reihe von Parsing-Funktionen ab, einschließlich der Extraktion verschachtelter Token-Paare und automatisierter Syntax-Validierung. Es wird für die Implementierung domänenspezifischer Sprachen (DSLs), benutzerdefinierter Sprach-Parser und die Auswertung mathematischer Ausdrücke verwendet. Zudem bietet es automatisierte Fehlerberichte zur Identifizierung unerwarteter Token oder fehlender Eingaben.
Checks input text against a formal grammar to identify syntax violations and report unexpected tokens.
This project is a Language Server Protocol implementation for PostgreSQL that provides autocompletion, syntax diagnostics, and type checking for SQL and PL/pgSQL. It functions as a database schema validator and a static analysis engine designed to detect security vulnerabilities, performance bottlenecks, and dangerous migration patterns in database scripts. The server differentiates itself by using live database connections to provide schema-aware intelligence, allowing it to verify that tables, columns, and data types actually exist. It performs static analysis on procedural functions to det
Performs type checking through explain-based error insights to lint database schemas and migrations.
Calcite ist ein Framework zum Parsen, Optimieren und Übersetzen von SQL-Abfragen in relationale Algebra für die Ausführung über verschiedene Datenquellen hinweg. Es fungiert als Cross-Source-Query-Engine, SQL-Parsing-Bibliothek und Optimierer für relationale Algebra. Das Projekt bietet eine kostenbasierte Optimierungs-Engine, die logische Abfragepläne mittels pluggbarer Regeln in effiziente physische Ausführungspläne umwandelt. Es nutzt Übersetzungsadapter, um Standard-SQL-Anfragen in die nativen Formate externer Datenbanken und Messaging-Systeme zu konvertieren, was Datenföderation über heterogene Speichersysteme hinweg ermöglicht. Das System deckt den gesamten Abfrage-Lebenszyklus ab, einschließlich SQL-Parsing und Validierung gegen Schemata, die Übersetzung von Ausdrücken in algebraische Operatoren sowie die Auswahl effizienter Ausführungspläne. Es enthält zudem ein Command-Line-Interface zum Ausführen von Abfragen und Verwalten von Verbindungen zu Datenquellen.
Converts SQL strings into abstract syntax trees (ASTs) to facilitate programmatic analysis and optimization.
Blitzar ist eine verifizierbare SQL-Proof-Engine und kryptografische Bibliothek, die für verifizierbare SQL-Berechnungen entwickelt wurde. Sie ermöglicht die Ausführung von Datenbankabfragen off-chain, während Zero-Knowledge-Proofs generiert werden, die die Korrektheit der Ergebnisse für die on-chain-Verifizierung zertifizieren. Das Projekt zeichnet sich durch einen GPU-beschleunigten Proof-Accelerator aus, der rechenintensive kryptografische Workloads auf Grafikprozessoren auslagert und so die für die Generierung prägnanter Proofs erforderliche Zeit reduziert. Es bietet hochperformante kryptografische Primitive für C++- und Rust-Anwendungen, mit Fokus auf elliptische Kurvenoperationen und Multi-Skalar-Multiplikation. Das System deckt eine breite Fläche an Datenmanagement und Sicherheit ab, einschließlich trustless Datenintegration, die Blockchain-Indizierung mit off-chain-Datensätzen zu manipulationssicheren relationalen Tabellen kombiniert. Es nutzt BFT-Konsens und Threshold-Signaturen zur Aufrechterhaltung der Statusintegrität, neben Mechanismen für Quorum-basierte Datensynchronisation und verifizierte Ergebniszustellung via Smart-Contract-Callbacks. Die Codebasis bietet native Bindings für C++ und Rust, um ihre kryptografischen Toolsets und Proof-Berechnungsbibliotheken offenzulegen.
Processes SQL syntax into abstract syntax trees to prepare queries for zero-knowledge proof generation.
Shellharden is a shell script hardening tool and linter designed to improve the security and reliability of Bash scripts. It functions as an automated utility that rewrites scripts to follow industry standards for quoting and security practices. The project provides an optimizer and standardizer that replaces unsafe patterns and aliases with safer functional equivalents. It includes a syntax highlighter that uses visual markers and colorization to indicate vulnerabilities and areas where quoting corrections are required. The tool covers a broad range of capabilities including automated safet
Identifies and visualizes structural errors and vulnerabilities to ensure scripts run predictably.
Dieses Repository dient als technische Dokumentationsquelle für das .NET-Ökosystem. Es besteht aus einer Sammlung konzeptioneller Leitfäden und technischer Referenzen, die in Markdown geschrieben sind und als statische Inhaltsquelle für ein öffentliches Dokumentationsportal fungieren. Das Projekt nutzt ein Git-basiertes Content-Management-System, um technisches Schreiben durch Pull Requests und automatisierte Build-Pipelines zu handhaben. Es zeichnet sich durch eine spezialisierte Infrastruktur aus, die Inhalte und Beispiele aus mehreren Repositories und Branches in einer einzigen einheitlichen Ausgabe aggregiert. Das System deckt ein breites Spektrum an Funktionen für den Dokumentationslebenszyklus ab, einschließlich automatisiertem Publishing, metadatengesteuerter Organisation und Versionskontrolle zum Entfernen veralteter Softwareinhalte. Es integriert Validierungstools für Markdown-Links und Metadaten sowie Governance-Dienstprogramme für lizenzbasiertes Abhängigkeits-Scanning und Secret-Leak-Erkennung. Administrative Automatisierung wird durch Tools für Issue-Labeling, Pull-Request-Koordination und pfadbasierte URL-Umleitung zur Verwaltung von Inhaltsmigrationen gehandhabt.
Checks for broken links and missing metadata within documentation files to ensure a high-quality user experience.
Dieses Projekt ist ein Entwickler-Utility, das als KI-gestützter Assistent für die Datenbankabfrageverwaltung fungiert. Es bietet eine interaktive Schnittstelle zur Übersetzung zwischen natürlicher Sprache und strukturiertem Datenbankcode, was die Prozesse des Schreibens, Debuggens und Wartens komplexer Abfragen vereinfacht. Das Tool zeichnet sich durch die Einbindung von schema-bewusster Kontext-Injektion aus, die es ermöglicht, generierte Abfragen mit spezifischen Tabellendefinitionen und Beziehungsmetadaten abzugleichen. Durch die Aufrechterhaltung eines zustandsbehafteten Gesprächsverlaufs und die Nutzung von Large Language Model-Prompting ermöglicht es Benutzern, Abfragen iterativ zu verfeinern und Erklärungen zu erhalten, die die spezifische Logik und Struktur ihrer Datenbankumgebung berücksichtigen. Über die reine Übersetzung hinaus unterstützt das Utility die Analyse bestehender Codes zur Identifizierung von Syntaxfehlern und bietet verständliche Aufschlüsselungen komplexer Abfragelogik in einfachem Englisch. Es enthält zudem Funktionen zur Formatierung von Datenbankcode und zur Verwaltung eines lokalen Verlaufs von Übersetzungsprotokollen, um die Wiederverwendung früherer Arbeiten zu erleichtern.
Processes SQL queries into abstract syntax trees to enable programmatic analysis and rewriting of database commands.