Le schéma d'une relation définit cette relation en intension. Il est composé :
du nom de la relation,
de la liste de ses attributs avec les domaines respectifs dans lesquels ils prennent leurs valeurs,
de la clé primaire,
des clés étrangères,
des clés candidates.
Le schéma relationnel d'une BD est la définition en intension de cette BD (par opposition à l'instance de la BD qui est une extension de la BD). Il est composé de l'ensemble des schémas de chaque relation de la BD.
Relation (Attribut1:Domaine1, Attribut2:Domaine2, ... , AttributN:DomaineN)
Relation (#Attribut1:Domaine1, ... , #AttributM:DomaineM, ... , AttributN:DomaineN)
Relation1 (..., AttributM=>Relation2, ... , AttributN=>Relation2)
Relation1 (...AttributM:DomaineM, ......) avec AttributM clé
La notation R(#a,#b)
signifie toujours que R
a comme clé primaire (a,b)
, et non que R
aurait deux clés a
et b
(dont on ne saurait pas laquelle est primaire).
La notation R(#a,b) avec b clé
signifie bien que a
et b
sont deux clés de R
, et que a
est primaire.
Il ne faut pas confondre une clé composée de deux attributs avec deux clés.