Requête

DéfinitionRequête

Une requête est définie comme une expression de la forme:

\(\{t_1,\dots,t_m \mid \varphi\}\)

\(t_1,\dots,t_m\) sont des termes et où l'ensemble des variables apparaissant dans \(t_1,\dots,t_m\) est exactement \(libre(\varphi)\).

Exemple

\(\{ x_t, x_a, x_s, x_h \mid Film (x_t, "Bergman", x_a)\wedge Seance(x_s, x_t, x_h)\}\) est une requête qui donne pour tous les films de Bergman leur titre, salle, adresse et horaire.

Une telle requête va définir une fonction. Appliquée à une instance de schéma de base de données, elle va retourner une relation d'arité \(m\), c'est-à-dire un ensemble de n-uplets d'arité \(m\), les résultats. On pourra donner un nom à la relation résultat :

\(res = \{t_1,\dots,t_m \mid \varphi\}\)

On dira qu'on a défini une vue de la base de données. La différence entre une relation de la base de données et une vue de cette même base, est que la relation est stockée sur disque et qu'elle peut être modifiée, alors que la vue est calculée à partir des relations stockées et qu'elle n'est pas directement modifiable.