This commit is contained in:
2025-11-07 11:11:08 +01:00
parent d8f2bcd068
commit 8be8d2b39a
2 changed files with 10 additions and 1 deletions

View File

@@ -412,6 +412,13 @@ erDiagram
- La suppression dun `holder` doit supprimer automatiquement la ligne correspondante dans `person` ou `company`. - La suppression dun `holder` doit supprimer automatiquement la ligne correspondante dans `person` ou `company`.
- Le type doit être contraint à `'PERSON'` ou `'COMPANY'`. - Le type doit être contraint à `'PERSON'` ou `'COMPANY'`.
Il existe deux méthodes pour gérer le type.
1. vérifier par la commande `CHECK` la validité de la valeur.
2. utiliser une énumération `enum`.
#### 1.2 Vérifications #### 1.2 Vérifications
- Lister tous les titulaires. Pour réutiliser rapidement la requête enregistrer la dans une vue. - Lister tous les titulaires. Pour réutiliser rapidement la requête enregistrer la dans une vue.

View File

@@ -5,9 +5,11 @@ set search_path TO bank;
/* /*
* Holder : table commune à tous les titulaires * Holder : table commune à tous les titulaires
*/ */
create type holder_type as enum ('PERSON', 'COMPANY');
create table holder ( create table holder (
"id" bigint primary key generated always as identity, -- identifiant unique "id" bigint primary key generated always as identity, -- identifiant unique
"type" text not null check ("type" in ('PERSON', 'COMPANY')), "type" holder_type not null,
"created_at" timestamp not null default now() -- date de création "created_at" timestamp not null default now() -- date de création
); );