SQL Database Flashcards

1
Q

Qu’est-ce que la méthode MERISE et pourquoi l’utiliser pour modéliser une base de données?

A

MERISE est une méthode française de conception de systèmes d’information qui sépare les données et les traitements en plusieurs modèles. Elle permet une approche structurée de la modélisation des données en partant d’une vision conceptuelle vers l’implémentation physique. Son utilisation garantit une conception claire, rigoureuse et évolutive des bases de données.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Expliquez la différence entre MCD, MLD et MPD.

A
  • Le MCD (Modèle Conceptuel de Données) représente les données et leurs relations de façon abstraite sans considérer l’implémentation technique.
  • Le MLD (Modèle Logique de Données) est la traduction du MCD avec ajout des clés primaires et étrangères.
  • Le MPD (Modèle Physique de Données) est l’implémentation finale adaptée au SGBD choisi, incluant les types de données, contraintes et spécificités techniques.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Qu’est-ce qu’une cardinalité et comment l’utiliser dans un MCD?

A

Une cardinalité exprime le nombre minimum et maximum de liens possibles entre deux entités dans une relation. Elle se note sous forme (min,max) et se place de chaque côté d’une association. Les valeurs typiques sont 0, 1 et n. Par exemple, une cardinalité (1,n) signifie “au minimum 1, au maximum plusieurs”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Comment gérer une relation Many-to-Many lors du passage du MCD au MLD?

A

Pour une relation Many-to-Many (n,n), on crée une table de jointure contenant au minimum les clés étrangères des deux entités concernées. Cette table peut également contenir des attributs propres à la relation. Par exemple, pour une relation n,n entre School et Language, on crée une table Teaching avec school_id et language_id.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qu’est-ce qu’une contrainte d’intégrité référentielle et pourquoi est-elle importante?

A

Une contrainte d’intégrité référentielle est une règle qui maintient la cohérence entre les tables liées par des clés étrangères. Elle définit le comportement lors des opérations de modification ou suppression (CASCADE, NO ACTION, etc.). Elle est essentielle pour éviter les données orphelines et garantir la cohérence de la base de données.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Comment implémentez-vous la sécurisation des données dans la conception d’une base de données?

A

La sécurisation des données s’implémente par:
* La gestion des utilisateurs et leurs droits d’accès
* Des contraintes d’intégrité référentielle
* La validation des entrées avant insertion
* Le chiffrement des données sensibles
* Le respect du RGPD pour les données personnelles
* Des mécanismes de sauvegarde et restauration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Quels outils utilisez-vous pour modéliser une base de données et pourquoi?

A

J’utilise des outils comme MySQL Workbench pour la conception graphique des modèles, car il permet de visualiser clairement les relations et génère automatiquement le SQL. Pour des ébauches rapides, le papier-crayon reste efficace. Pour la collaboration, des solutions en ligne comme QuickDBD sont pratiques pour partager les modèles.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Comment mettre en oeuvre l’éco-conception dans la modélisation d’une base de données?

A

L’éco-conception d’une base de données implique:
* L’optimisation des types de données (utiliser le type le plus adapté et économe)
* La normalisation pour éviter la redondance
* L’indexation judicieuse pour optimiser les requêtes
* La limitation du stockage de données temporaires
* La conception d’une architecture permettant d’archiver ou purger les données obsolètes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Comment gérez-vous l’accessibilité dans la conception d’une base de données web?

A

Bien que l’accessibilité concerne principalement l’interface utilisateur, la conception de la base de données doit la faciliter en:
* Stockant les métadonnées d’accessibilité (textes alternatifs, descriptions, etc.)
* Structurant les données pour permettre différents modes d’affichage
* Prévoyant des champs pour les contenus multilingues
* Gardant une structure qui permet une navigation cohérente

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Expliquez comment vous documenteriez le déploiement d’une application dynamique web avec sa base de données.

A

je documenterais:
*
Le schéma complet de la base de données (MPD)
* Les scripts SQL de création et initialisation
* Les procédures de sauvegarde et restauration
* Les contraintes d’intégrité et règles métier
* Les procédures stockées et triggers
* Les accès et droits utilisateurs
* Les particularités de l’environnement (versions, configurations)
* Les étapes de déploiement avec vérifications à chaque étape
* Les procédures de rollback en cas de problème

How well did you know this?
1
Not at all
2
3
4
5
Perfectly