Héritage Flashcards
(40 cards)
Quel est l’objectif principal du projet ‘Dressing’ présenté dans le cours ?
Concevoir et implanter une base de données et une application pour gérer un dressing et faire de l’aide à la décision pour le choix des tenues
Quels sont les principaux outils utilisés dans le projet ‘Dressing’ ?
PostgreSQL, Data Mapper/OrmLite, Java, JDBC
Qu’est-ce que JDBC ?
Java DataBase Connectivity, une bibliothèque d’interfaces et de classes pour communiquer avec un SGBDR et manipuler des requêtes SQL
Quel est l’objectif d’un ORM (Object Relational Mapping) ?
Cacher la façon dont sont stockées les données à la couche métier
Quelles sont les deux principales formes de mise en œuvre d’un ORM ?
Via un logiciel ORM ou “à la main”
Quelle est la principale différence entre la modélisation de l’héritage via les tables filles et via INHERITS en PostgreSQL ?
Avec INHERITS, on garde le concept général plus proche de la modélisation logique, alors qu’avec les tables filles, on perd certains concepts logiques
Quel est un avantage majeur de l’utilisation d’INHERITS en PostgreSQL pour l’héritage ?
La possibilité de récupérer l’ensemble de l’information des tables filles en une seule requête
Citez un inconvénient majeur de l’utilisation d’INHERITS en PostgreSQL pour l’héritage
Les contraintes d’intégrité (comme les clés primaires et étrangères) ne sont pas héritées automatiquement
Quelle commande SQL permet de créer une table héritant d’une autre table en PostgreSQL ?
CREATE TABLE NomTable (…) INHERITS(TableParente);
Comment peut-on accéder uniquement aux données de la table mère lors de l’utilisation d’INHERITS en PostgreSQL ?
En utilisant le mot-clé ONLY dans la requête SELECT, par exemple : SELECT * FROM ONLY TableMere;
Quel est le principal problème lié aux contraintes d’intégrité lors de l’utilisation d’INHERITS en PostgreSQL ?
Les contraintes de clé primaire et de clé étrangère ne sont pas héritées par les tables filles
Quelle est la première étape recommandée avant de se lancer dans l’implémentation d’un projet de base de données ?
Réaliser la logique métier de l’application, par exemple en créant un diagramme de classe
Quelle est l’importance de penser la logique métier indépendamment de la persistance des données ?
Cela permet une meilleure conception et une plus grande flexibilité dans l’implémentation
Quel est l’avantage d’implanter progressivement un projet de base de données ?
Cela permet de mieux gérer la complexité et de tester chaque partie au fur et à mesure
Quelle est la première étape du processus théorique pour réaliser une base de données ?
La récolte des informations réelles permettant de concevoir le schéma de très haut niveau
Qu’est-ce que la normalisation dans le contexte des bases de données ?
C’est le processus de décomposition des relations pour éliminer les redondances et les dépendances anormales
Pourquoi est-il important de considérer le volume de données à traiter lors de la conception d’une base de données ?
Pour déterminer s’il faut définir des index et optimiser les performances
Quel est le rôle des index dans une base de données ?
Ils permettent d’accélérer les requêtes fréquentes sur certains attributs
Pourquoi est-il important d’analyser les types de requêtes qui seront mises en œuvre sur la base ?
Pour optimiser la structure de la base et les index en fonction des accès les plus fréquents
Quelle est l’importance de considérer l’utilisation prévue de la base (consultation vs modification) lors de sa conception ?
Cela influence la gestion de la concurrence et les performances globales du système
Quelles sont les trois principales étapes du projet ‘Dressing’ mentionnées dans le cours ?
- Réalisation du modèle E-A, 2. Passage au modèle relationnel, 3. Discussion sur les contraintes d’intégrité
Qu’est-ce qu’un modèle E-A ?
Un modèle Entité-Association, utilisé pour représenter conceptuellement les données et leurs relations
Que signifie CIs dans le contexte du cours ?
Contraintes d’Intégrité
Quelle est la différence entre un modèle conceptuel et un modèle relationnel ?
Le modèle conceptuel (comme E-A) représente les concepts et leurs relations, tandis que le modèle relationnel traduit ces concepts en tables et relations pour une base de données