18 repository-uri
Tools for embedding conditional logic and variables into SQL queries at runtime.
Distinct from SQL Logic Validators: Distinct from SQL Logic Validators: focuses on the generation and injection of dynamic SQL rather than verifying query correctness.
Explore 18 awesome GitHub repositories matching data & databases · Dynamic SQL Generators. Refine with filters or upvote what's useful.
graphql-engine is an automated GraphQL API engine that transforms database tables and relationships into a queryable GraphQL schema. It functions as a federation gateway and mapper, instantly generating APIs with built-in filtering, pagination, and mutations from existing databases and remote schemas. The project distinguishes itself through a fine-grained access control layer that enforces row-level and field-level permissions. It further provides a real-time data subscription server that converts standard queries into live streams and a system for triggering event-driven webhooks and notifi
Maps GraphQL ASTs and permission filters directly into optimized SQL statements at runtime.
Kysely is a TypeScript SQL query builder that provides a type-safe interface for constructing and executing database queries. It functions as a database layer that ensures schema compliance and prevents runtime errors by using a fluent interface and a programmable way to build complex SQL statements. The project features a type-safe database layer capable of inferring return types and aliases from SQL selections and joins. It also includes a SQL migration manager to track and apply schema changes across different environments to keep database versions synchronized. The toolkit covers relatio
Builds SQL statements at runtime based on variable inputs while maintaining type safety.
dbt-core is a command-line framework for transforming data within a warehouse using modular SQL and version control. It functions as a data transformation engine that enables users to define data structures and business logic through declarative configuration files, which the system then compiles into executable code. By managing complex data dependencies through a directed acyclic graph, it ensures that transformation tasks execute in the correct order while maintaining a manifest-driven state to track lineage and execution history. The project distinguishes itself through an adapter-based d
Embeds conditional statements, loops, and variable references within SQL queries to generate complex, reusable data transformation logic.
PostGraphile is an automated tool that converts a PostgreSQL database schema into a fully functional GraphQL API. It serves as a GraphQL execution engine and schema orchestrator, utilizing database schema introspection to retrieve strongly typed metadata directly from PostgreSQL. The project features a modular system for composing and standardizing GraphQL schemas through plugins, which manage naming conventions and connections. It includes a PostgreSQL query builder that constructs dynamic, SQL-injection-proof queries using tagged template literals. The system employs a declarative query pl
Builds dynamic, SQL-injection-proof database queries using tagged template literals to handle complex data requirements.
Mybatis-PageHelper is a pagination plugin and persistence framework extension for MyBatis. It functions as a physical pagination engine that automatically appends limit and offset clauses to SQL queries to retrieve specific record subsets from a data source. The project optimizes data retrieval by modifying SQL statements at runtime to reduce memory overhead. It implements database pagination and data set windowing to manage the retrieval of paginated data within Java applications. The system utilizes a MyBatis interceptor chain for dynamic SQL rewriting and employs database dialects to ensu
Dynamically rewrites SQL statements to append limit and offset clauses based on pagination parameters.
Datasette is a tool for publishing and sharing SQLite databases as public websites. It functions as a data publishing system that provides searchable interfaces and JSON APIs to expose the contents of SQLite files. The project enables both server-side and client-side execution. It can operate as an API server or as a database browser that runs entirely within a web browser using WebAssembly, allowing for serverless database access. The system supports a variety of deployment strategies, including containerized images for cloud hosting and a local development server for testing. It includes c
Translates user interface interactions into structured SQL queries to fetch and filter database content.
Sea-ORM is an asynchronous SQL object-relational mapper and database toolkit for mapping relational tables to strongly typed objects. It provides a relational database mapper for performing CRUD operations across MySQL, PostgreSQL, and SQLite, and includes a programmatic dynamic query builder for constructing complex SQL statements. The project distinguishes itself by providing a GraphQL schema generator that transforms database entities into typed schemas with built-in pagination and filters. It also features a dedicated database migration tool for defining and applying versioned schema chan
Constructs SQL queries programmatically at runtime using a fluent API instead of static raw strings.
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
Provides a Python API for programmatically building and modifying dynamic SQL queries.
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
Transforms complex SQL queries into optimized equivalent versions using custom heuristic rules.
Atlas is a SQL database schema management tool and database infrastructure as code framework. It provides a declarative database migration engine that computes the difference between a desired schema state and the current database state to automatically generate the necessary SQL for transitions. The project distinguishes itself through a comprehensive suite of analysis and visualization tools, including a database schema linter that detects destructive changes and data loss risks. It also features a SQL schema visualization tool capable of generating entity-relationship diagrams from extract
Computes database schemas dynamically by injecting variables into SQL files using templates.
Squirrel is a Go database library and SQL query builder that provides a programmatic interface for constructing and executing SQL statements. It enables the creation of queries using a fluent interface to avoid manual string concatenation. The library functions as a SQL dialect generator, producing queries formatted for specific database engines by adjusting placeholders and syntax to match target requirements. This allows for the generation of SQL compatible with multiple different database environments. Beyond query construction, the project covers the execution of generated statements aga
Generates dynamic SQL statements programmatically to avoid syntax errors and manual concatenation.
This project provides a SQL interface for Elasticsearch, serving as a translator and database layer that allows users to retrieve, filter, and manipulate indices using structured query language. It functions by converting standard SQL statements into the native JSON query language used by the search engine. The system includes a geospatial SQL engine for executing location-based searches and distance calculations. It also features a query debugger used to visualize the translation process from SQL to search engine request bodies to verify the logic and accuracy of data retrieval. The capabil
Programmatically builds search engine request bodies at runtime based on parsed SQL expressions.
jOOQ is a type-safe SQL query builder for Java that generates code from live database schemas, enabling compile-time validation of SQL syntax and data types. Its core identity is built around a fluent DSL that mirrors SQL structure, a code generator that maps tables, views, and routines to Java objects, and a multi-dialect engine that translates the same DSL into vendor-specific SQL for over 30 databases. The project also includes a SQL parser and transformer for refactoring or dialect conversion, reactive stream integration for non-blocking query execution, and a JDBC proxy diagnostics tool f
Assembles SQL statements programmatically from independent expression objects to compose queries at runtime with type safety.
MyBatis Generator este un instrument care inspectează tabelele bazei de date pentru a produce automat obiecte model, interfețe mapper și fișiere de configurare SQL. Funcționează ca un mapper de schemă de bază de date și generator de operațiuni CRUD, traducând coloanele bazei de date relaționale în clase și înregistrări specifice limbajului. Proiectul este un generator de cod extensibil care permite personalizarea fișierelor de ieșire printr-un mecanism de plugin-uri. Acest framework permite adăugarea unei logici de business specifice sau modificarea procesului de generare pentru a produce fișiere de ieșire adaptate. Generatorul acoperă o gamă largă de capabilități, inclusiv implementarea interogărilor dinamice, crearea de modele imuabile și automatizarea operațiunilor standard de creare, citire, actualizare și ștergere. Suportă maparea schemei bazei de date cu chei primare virtuale și poate genera cod pentru mai multe limbaje, inclusiv Kotlin. Procesul de generare poate fi executat prin instrumente CLI, apeluri directe de funcții sau ca un plugin de build tool integrat în pipeline-urile de integrare continuă.
Creates complex database filter conditions using functional logic to generate flexible search results without writing static query classes.
Davinci este o platformă de business intelligence și vizualizare a datelor utilizată pentru construirea de dashboard-uri și rapoarte interactive. Funcționează ca un constructor de dashboard-uri bazat pe SQL și un serviciu de analiză multi-tenant care se conectează la baze de date prin JDBC și fișiere CSV pentru a transforma datele brute în componente vizuale. Platforma se distinge prin modelul său granular de securitate, care include permisiuni la nivel de rând și coloană integrate cu autentificarea LDAP și OAuth2. Oferă, de asemenea, un instrument de vizualizare încorporat care permite inserarea diagramelor și dashboard-urilor securizate și parametrizate în aplicații externe prin URL-uri și frame-uri. Sistemul acoperă o gamă largă de capabilități, inclusiv modelarea datelor cu șabloane SQL, un motor de layout drag-and-drop pentru dashboard-uri responsive și o mare varietate de tipuri de vizualizare, cum ar fi diagrame Sankey, diagrame radar și hărți geografice. Include, de asemenea, automatizare pentru programarea rapoartelor prin e-mail și utilizează caching-ul cheie-valoare pentru a optimiza performanța interogărilor.
Generates dynamic SQL by embedding conditional logic and session variables into database templates at runtime.
Acest proiect este o versiune oglindită a codului sursă al framework-ului de persistență MyBatis, prezentată ca o bibliotecă de integrare a bazelor de date Java și un framework de mapare SQL. Scopul său principal este de a oferi un cod sursă cu adnotări detaliate în limba chineză pentru a facilita studiul arhitecturii interne și al tiparelor de design ale framework-ului. Repository-ul se concentrează pe analiza codului sursă Java și învățarea framework-ului. Permite utilizatorilor să examineze implementarea subiacentă a bibliotecii pentru a înțelege cum sunt structurate și executate componentele software complexe. Funcționalitatea de bază acoperită include maparea bazelor de date relaționale, unde înregistrările din baza de date sunt convertite în obiecte de aplicație. Acest lucru este realizat printr-o combinație de configurare a mapării bazată pe XML și maparea interogărilor bazată pe adnotări. Capabilitățile framework-ului includ, de asemenea, generarea dinamică de SQL, gestionarea rezultatelor bazată pe cache și utilizarea reflexiei și a proxy-urilor dinamice pentru a mapa rezultatele bazei de date către obiecte Java.
Constructs database queries at runtime by evaluating conditional logic and parameters within mapping templates.
FreeSql este un mapper obiect-relațional (ORM) .NET și un strat de acces la date care traduce codul orientat pe obiecte în SQL pentru mai mulți furnizori de baze de date relaționale. Funcționează ca un builder fluent de query-uri SQL și sincronizator de schemă de bază de date, permițând dezvoltatorilor să alinieze structurile tabelelor și indicilor bazei de date cu definițiile claselor de entități. Framework-ul este optimizat special pentru .NET Native AOT pentru a asigura amprente de memorie reduse și timpi de pornire mai rapizi. Include un manager de trafic al bazei de date pentru a distribui load-ul prin read-write splitting, sharding dinamic al tabelelor și izolare a datelor bazată pe chiriași (tenant). Capabilitățile largi includ ingestia de date de înaltă performanță folosind mecanisme de bulk copy specifice furnizorului, interogare avansată cu funcții de fereastră și CTE-uri recursive, și monitorizare bazată pe AOP pentru auditarea modificărilor de date. Sistemul oferă, de asemenea, instrumente de gestionare a schemei pentru migrări automate și utilitare de dezvoltare pentru generarea claselor de entități din metadatele bazei de date.
Intercepts and modifies generated SQL strings at runtime to handle custom type conversions.
Ebean este un framework de mapare obiect-relațională (ORM) pentru Java, conceput pentru a simplifica persistența bazei de date prin generarea automată de interogări, migrarea schemei și gestionarea tranzacțiilor. Utilizează maparea bazată pe metadate și îmbunătățirea bytecode-ului pentru a face legătura între obiectele aplicației și tabelele bazei de date relaționale, oferind un strat de persistență care gestionează interacțiunile complexe cu datele, menținând în același timp consistența între limitele unit-of-work. Framework-ul se distinge prin accentul pus pe productivitatea dezvoltatorului și optimizarea performanței. Oferă constructori de interogări type-safe care generează cod la momentul compilării, permițând auto-completarea în IDE și validarea statică a operațiunilor bazei de date. În plus, include suport integrat pentru testarea bazată pe containere, permițând dezvoltatorilor să gestioneze instanțe efemere de baze de date și să automatizeze inițializarea schemei direct în suitele lor de testare. Dincolo de maparea de bază, proiectul oferă o suită cuprinzătoare de instrumente pentru gestionarea datelor și observabilitate. Aceasta include evoluția automată a schemei, rutarea read-replica pentru gestionarea conexiunilor și cache-uire pe mai multe niveluri pentru a reduce încărcarea bazei de date. De asemenea, oferă capabilități de diagnosticare, cum ar fi capturarea planului de execuție a interogărilor și tracing distribuit pentru a asista la reglarea performanței. Biblioteca suportă fluxuri de lucru moderne de deployment, inclusiv compilarea ahead-of-time pentru imagini native, pentru a elimina overhead-ul de reflexie la runtime. Este distribuită ca o bibliotecă Java standard, cu documentație și instrumente disponibile pentru a sprijini integrarea în procesele de build existente.
Constructs optimized database queries at runtime by inspecting object graphs and applying necessary filters.