Database Reference
In-Depth Information
Contraintes prédéinies
cLe chapitre 1 a présenté deux contraintes prédéinies de UML : subsets (qui exprime une
contrainte d'inclusion) et xor (qui indique un ou exclusif).
Contrainte d'inclusion
Dans l'exemple suivant, la contrainte subsets exprime le fait qu'une inscription à une forma-
tion par un stagiaire (relation effectue ) ne sera possible que si ce même stagiaire a choisi au
préalable cette formation (relation vœux ). Le script SQL décrit n'inclut pas la contrainte qui
n'est pas générée automatiquement, mais qu'il faudra coder manuellement.
Tableau 3-15 : Contrainte d'inclusion
Schéma relationnel
Script SQL
ALTER TABLE voeux
DROP CONSTRAINT fk_voeux_stagiair;
DROP TABLE formation CASCADE
CONSTRAINTS;
DROP TABLE stagiaire CASCADE
CONSTRAINTS;
DROP TABLE effectue CASCADE
CONSTRAINTS;
DROP TABLE voeux CASCADE CONSTRAINTS;
CREATE TABLE formation (
id_form INTEGER NOT NULL,
nom_formation VARCHAR2(50),
duree INTEGER,
prix_ht FLOAT,
CONSTRAINT pk_formation
PRIMARY KEY (id_form));
CREATE TABLE stagiaire (
id_stag INTEGER NOT NULL,
prenom_stag VARCHAR2(40),
nom_stag VARCHAR2(50),
mail_stag VARCHAR2(60),
CONSTRAINT pk_stagiaire
PRIMARY KEY (id_stag));
CREATE TABLE effectue (
id_stag INTEGER NOT NULL,
id_form INTEGER NOT NULL,
CONSTRAINT pk_effectue
PRIMARY KEY (id_stag, id_form));
CREATE TABLE voeux (
id_stag INTEGER NOT NULL,
id_form INTEGER NOT NULL,
CONSTRAINT pk_voeux
PRIMARY KEY (id_stag, id_form));
Figure 3-12 . Contrainte d'inclusion
 
Search WWH ::




Custom Search