Les enregistrements imbriqués (modèle et LDD)

ExempleGestion d'attribut composé par imbrication d'enregistrement (table à une seule ligne)

Appuyer sur espace pour rester en pause.
Imbrication d'enregistrement

ExempleModèle logique

Appuyer sur espace pour rester en pause.
1
Type typBureau : <centre:char, batiment:char, numero:int>
2
tIntervenant (#nom:char, prenom:char, bureau:typBureau)

ExempleImplémentation SQL3

Appuyer sur espace pour rester en pause.
1
CREATE OR REPLACE TYPE typBureau AS OBJECT (
2
centre char(2),
3
batiment char(1),
4
numero number(3)
5
);
6
/
7
8
CREATE TABLE tIntervenant (
9
pknom varchar2(20) PRIMARY KEY,
10
prenom varchar2(20) NOT NULL,
11
bureau typBureau
12
);

RemarquePremière forme normale

Le recours aux types utilisateurs brise la règle de la première forme normale de l'atomicité des valeurs d'attribut.

Ce non respect de la 1NF[1] ne pose pas de problème en relationnel-objet car la déclaration de type permet de contrôler la structure interne des enregistrements imbriqués.