Files
sql/banque.md
2025-11-02 14:36:58 +01:00

2.4 KiB
Raw Blame History

Modélisation d'un système bancaire

Objectifs

  • Concevoir un modèle relationnel à partir dun scénario réaliste.
  • Utiliser les contraintes dintégrité pour garantir la cohérence des données.
  • Manipuler des jointures et des relations nn.
  • Comprendre la notion dhéritage logique en base de données.

Contexte

Une banque locale souhaite informatiser la gestion de ses comptes et de leurs titulaires. Chaque compte peut appartenir à une ou plusieurs personnes physiques ou morales.

Vous êtes chargé(e) de concevoir et dimplémenter le schéma relationnel de base permettant de gérer :

  1. Les clients de la banque, appelés titulaires (holders),
  2. Les comptes bancaires (accounts),
  3. Le lien entre les titulaires et les comptes.

1. Les titulaires

Un titulaire (holder) peut être une personne physique (person) ou une entreprise (company).

1.1 Exemple de données

  • une personne nommée Françoise Zanetti, née le 12 avril 1995.
  • une entreprise nommée Boulangerie de Valorgue, créée le 19/08/2014, numéro dimmatriculation FR19803269968.

1.2 Analyse

  • Quelles informations faut-il conserver pour tous les titulaires ?
  • Quelles informations sont spécifiques à chaque type de titulaire ?
  • Comment représenter cette distinction en base relationnelle ?

Tip

Indice : on peut utiliser une table abstraite holder, puis des tables person et company qui héritent logiquement de celle-ci.

1.3 Contraintes à respecter

  • Chaque person ou company doit correspondre à exactement un seul holder.
  • La suppression dun holder doit supprimer automatiquement la ligne correspondante dans person ou company.
  • Le type doit être contraint à 'PERSON' ou 'COMPANY'.

1.4 Vérifications

Lister tous les titulaires.

Supprimer un titulaire, vérifier que cela supprime l'individu ou la société correspondante.

1.5 Réflexion

    1. Pourquoi séparer person et company ?
    1. Pourquoi ne pas tout mettre dans une seule table holder ?
    1. Quelle contrainte empêche dinsérer une person sans holder ?

1.6 Pour aller plus loin

La banque souhaite désormais que toute personne titulaire dun compte ait au moins 15 ans à la date de création de sa fiche.

2. Les comptes

  • Un compte bancaire appartient à un ou plusieurs titulaires (holders).
  • Chaque compte dispose dun numéro de compte (account number) unique et dun solde.