Database Reference
In-Depth Information
Programmation des contraintes
Cette section détaille d'une part la programmation des contraintes d'héritage et des contraintes
prédéinies de UML (la contrainte d'inclusion et celle du ou exclusif). D'autre part, elle pré-
sente la traduction d'une contrainte personnalisée.
Il existe trois familles de décomposition pour traduire une association d'héritage (voir le cha-
pitre 2) : décomposition par distinction, descendante ( push-down ) et ascendante ( push-up ).
Héritage par distinction
Suivant le principe de décomposition par distinction, autant de tables que de relations sont
créées et la clé primaire de la table générique se propage dans les tables plus spéciiques.
Tableau 3-8 : Transformation de l'héritage par distinction
Schéma relationnel
Script SQL
ALTER TABLE administratif
DROP CONSTRAINT fk_admin_personne;
ALTER TABLE commercial
DROP CONSTRAINT fk_commerci_personne;
ALTER TABLE manager
DROP CONSTRAINT fk_manager_personne;
DROP TABLE administratif CASCADE CONSTRAINTS;
DROP TABLE commercial CASCADE CONSTRAINTS;
DROP TABLE manager CASCADE CONSTRAINTS;
DROP TABLE personnel CASCADE CONSTRAINTS;
CREATE TABLE administratif (
idpers INTEGER NOT NULL,
syndicat VARCHAR2(60),
nbheuressupp INTEGER,
CONSTRAINT pk_administratif
PRIMARY KEY ( idpers ));
CREATE TABLE commercial (
idpers INTEGER NOT NULL,
prime FLOAT,
CONSTRAINT pk_commercial
PRIMARY KEY ( idpers ));
CREATE TABLE manager (
idpers INTEGER NOT NULL,
nbhmois INTEGER,
Figure 3-9 . Héritage par distinction
 
Search WWH ::




Custom Search