6. Les systèmes de bases de données post-relationnelles
191
réponses aux requêtes d'interrogation qui ne portent pas uniquement
sur l’instant présent ou sur des intervalles de temps actuels.
Figure 6-4
Extrait d'une table
temporelle
TEMP_EMPLOYÉ
Un exemple de
requête portant sur
le passé
À titre d'exemple, dans la figure 6-4 nous désirons connaître la
fonction de l'employé Meier au 1
er janvier 1988. Au lieu de la
commande SQL initiale qui exprime une requête imbriquée et fait
appel à la fonction MAX (voir 3.4.1), nous pouvons imaginer un
langage qui prend en charge les requêtes temporelles. Le mot-clé
VALID_AT nous permet de spécifier un point temporel par rapport
auquel s'effectuera la recherche de toutes les entrées valides.
Propriétés
fondamentales
d’un système de
bases de données
temporelles
Système de bases de données temporelles
Un système de gestion de bases de données temporelles
„ prend en charge l'ensemble des valeurs de l'axe du temps comme
temps valide en ordonnant chronologiquement les tuples ou les
valeurs d’attributs, et
01.07.1984
13.09.1986
04.05.1987
01.04.1989
VALID_FROM
E1
E1
E1
E1
E#
Meier
Meier
Meier
Meier
Nom
Bulle
Fribourg
Fribourg
Bulle
Ville
1984-07-01
1984-07-01
1984-07-01
1984-07-01
Date
d’embauche
Programmeur
Programmeur
Analyste-progr.
Analyste
Fonction
SELECT Fonction
FROM
TEMP_EMPLOYE A
WHERE A.E# = E1 AND
A.VALID_FROM =
( SELECT MAX(VALID_FROM)
FROM TEMP_EMPLOYE B
WHERE B.E# = E1 AND
B.VALID_FROM <=
’01.01.1988’ )
Déterminer la fonction de l’employé Meier au 01.01.1988 :
Analyste-progr.
Fonction
TEMP_EMPLOYÉ (Extrait)
SQL initial :
SQL temporel :
SELECT Fonction
FROM
TEMP_EMPLOYE
WHERE E# = E1 AND
VALID_AT(01.01.1988)
Précédent

- 205/301

Suivant