2 dépôts
Executes SQL queries through generated typed functions that accept parameters and return structured results.
Distinct from SQL Query Execution: Distinct from SQL Query Execution: focuses on executing queries through generated type-safe APIs, not general SQL execution.
Explore 2 awesome GitHub repositories matching data & databases · Typesafe Query Executions. Refine with filters or upvote what's useful.
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
Labels SQL statements to produce generated typed functions that run the statements and return typed objects.
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.
Maps query results directly into defined structures to eliminate manual row scanning while managing transactions and prepared statements.