Symfony

Doctrine ORM - Les bases

Entities, annotations, EntityManager, repositories, DQL, QueryBuilder, relationships

25 questions d'entretien·
Junior
1

Qu'est-ce que Doctrine ORM dans le contexte de Symfony ?

Réponse

Doctrine ORM est un Object-Relational Mapper qui permet de manipuler des données de base de données via des objets PHP. Il abstrait les requêtes SQL en fournissant une couche objet, rendant le code plus maintenable et portable entre différents systèmes de gestion de bases de données. C'est l'ORM par défaut recommandé avec Symfony.

2

Quel attribut PHP 8 utiliser pour déclarer une classe comme entité Doctrine ?

Réponse

L'attribut #[ORM\Entity] est utilisé pour indiquer à Doctrine qu'une classe PHP est une entité mappée à une table de base de données. Cet attribut remplace les annotations en commentaires et fait partie du namespace Doctrine\ORM\Mapping. Il peut être combiné avec repositoryClass pour spécifier un repository personnalisé.

3

Comment définir une colonne auto-incrémentée comme clé primaire dans une entité Doctrine ?

Réponse

Pour définir une clé primaire auto-incrémentée, il faut combiner deux attributs : #[ORM\Id] pour marquer la propriété comme identifiant, et #[ORM\GeneratedValue] pour indiquer que la valeur sera générée automatiquement par la base de données. La stratégie par défaut est AUTO, qui choisit la méthode appropriée selon le SGBD.

4

Quelle est la différence entre persist() et flush() dans EntityManager ?

5

Quel attribut utiliser pour mapper une propriété string à une colonne VARCHAR en Doctrine ?

+22 questions d'entretien

Maîtrise Symfony pour ton prochain entretien

Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.

Commencer gratuitement