4 repository-uri
Automating the creation of application structures and functions from standard SQL queries.
Distinct from SQL Query Interfaces: Existing candidates focus on query building or migrations, not the full workflow of generating application code from SQL
Explore 4 awesome GitHub repositories matching data & databases · SQL-to-Code Workflows. Refine with filters or upvote what's useful.
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
Automates the process of turning raw SQL queries into corresponding typed functions and structures.
SQLDelight is a Kotlin database library that validates SQL schema, statements, and migrations at compile time, generating type-safe Kotlin query functions from labeled SQL files. It treats SQL as the source of truth for database definitions, catching schema errors during the build process before they reach production. The library supports multiple database dialects including SQLite, MySQL, PostgreSQL, HSQL, and H2, and generates platform-specific code for Android, iOS, JVM, and JavaScript targets. It provides a platform-specific driver abstraction that handles database connectivity difference
Compiles SQL schema and queries into type-safe Kotlin code at build time.
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ă.
Produces idiomatic Kotlin data classes and access code for database structures.
Acest proiect este un toolkit de baze de date pentru Go care oferă mapare schemă-la-obiect, construcție fluentă a interogărilor și generare automată de cod. Funcționează ca un framework pentru accesul type-safe la baza de date, permițând dezvoltatorilor să interacționeze cu bazele de date relaționale prin generarea de modele și interfețe direct din schemele existente ale bazelor de date. Toolkit-ul se distinge printr-un flux de lucru care parsează fișiere SQL scrise manual pentru a genera funcții type-safe, permițând integrarea SQL-ului personalizat în timp ce se menține maparea consistentă a rezultatelor. Suportă personalizarea modulară printr-o arhitectură bazată pe plugin-uri și utilizează metadate bazate pe comentarii SQL pentru a controla structura codului generat. În plus, simplifică dezvoltarea prin generarea automată de fabrici de date de test pentru a eficientiza configurarea testelor unitare și de integrare. Dincolo de generarea de bază, toolkit-ul oferă o suită cuprinzătoare pentru gestionarea întregului ciclu de viață al interacțiunilor cu baza de date. Aceasta include construirea fluentă a interogărilor între mai multe dialecte, sanitizarea automată a parametrilor pentru a preveni injecția SQL și maparea relațională care transformă rezultatele interogărilor plate în structuri de obiecte imbricate. Dispune, de asemenea, de hook-uri de ciclu de viață pentru executarea logicii personalizate în timpul operațiunilor bazei de date și suportă integrarea incrementală, permițând adoptarea parțială fără a necesita o migrare completă a sistemului.
Parses hand-written SQL files to generate type-safe functions and automated test suites.