Documentation · Chapitre 13

Se connecter et interroger sans cacher la réalité SQL.

Les connexions nommées séparent les responsabilités. DbSet construit des requêtes validées et immuables; les valeurs préparées restent séparées de la structure SQL.

Chaque leçon part du problème, explique le mécanisme puis propose une vérification concrète.

Nommer les connexions par responsabilité

main peut recevoir les écritures et reporting servir les analyses. Une connexion nommée rend le choix visible et empêche une fonction d’utiliser silencieusement la mauvaise base.

phpaml — zsh
aml install data --driver sqlite

$active = $context->set(User::class)
    ->where('active', '=', true)
    ->orderBy('name')
    ->paginate(1, 20);

Composer les requêtes avec DbSet

where, orderBy, whereIn, with, limit, find, first, count et paginate produisent des résultats prévisibles. Les requêtes sont clonées à chaque modification : une base commune reste réutilisable.

Valider les entités avant la persistance

Les attributs Required, Email et Length rejettent une entité invalide avant l’écriture. Les contraintes de base restent indispensables puisqu’elles protègent tous les producteurs.