4 dépôts
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 est un outil qui inspecte les tables de base de données pour produire automatiquement des objets modèles, des interfaces de mapper et des fichiers de configuration SQL. Il fonctionne comme un mappeur de schéma de base de données et un générateur d'opérations CRUD, traduisant les colonnes de base de données relationnelle en classes et enregistrements spécifiques au langage. Le projet est un générateur de code extensible qui permet la personnalisation des fichiers de sortie via un mécanisme de plugin. Ce framework permet l'ajout d'une logique métier spécifique ou la modification du processus de génération pour produire des fichiers de sortie sur mesure. Le générateur couvre un large éventail de capacités, notamment l'implémentation de requêtes dynamiques, la création de modèles immuables et l'automatisation des opérations standard de création, lecture, mise à jour et suppression. Il prend en charge le mappage de schéma de base de données avec des clés primaires virtuelles et peut générer du code pour plusieurs langages, y compris Kotlin. Le processus de génération peut être exécuté via des outils en ligne de commande, des appels de fonction directs ou en tant que plugin d'outil de build intégré dans des pipelines d'intégration continue.
Produces idiomatic Kotlin data classes and access code for database structures.
Ce projet est une boîte à outils de base de données pour Go qui fournit un mappage schéma-vers-objet, une construction de requête fluide et une génération de code automatisée. Il fonctionne comme un framework pour l'accès aux bases de données typé, permettant aux développeurs d'interagir avec des bases de données relationnelles en générant des modèles et des interfaces directement à partir des schémas de base de données existants. La boîte à outils se distingue par un flux de travail qui analyse les fichiers SQL écrits à la main pour générer des fonctions typées, permettant l'intégration de SQL personnalisé tout en maintenant un mappage de résultats cohérent. Elle prend en charge la personnalisation modulaire via une architecture basée sur des plugins et utilise des métadonnées basées sur des commentaires SQL pour contrôler la structure du code généré. De plus, elle simplifie le développement en générant automatiquement des usines de données de test pour rationaliser la configuration des tests unitaires et d'intégration. Au-delà de la génération de base, la boîte à outils fournit une suite complète pour gérer le cycle de vie complet des interactions avec la base de données. Cela inclut la construction de requêtes fluides à travers plusieurs dialectes, l'assainissement automatisé des paramètres pour prévenir l'injection SQL, et le mappage relationnel qui transforme les résultats de requête plats en structures d'objets imbriquées. Elle dispose également de hooks de cycle de vie pour exécuter une logique personnalisée pendant les opérations de base de données et prend en charge l'intégration incrémentale, permettant une adoption partielle sans nécessiter une migration complète du système.
Parses hand-written SQL files to generate type-safe functions and automated test suites.