2 research outputs found

    Contributions aux notions d’équivalence relationnelle dans un contexte d’essais

    Get PDF
    Plusieurs systèmes d’aide à l’enseignement ont la capacité d’évaluer et de comparer les travaux des étudiants. Dans un contexte d’enseignement des systèmes de gestion de bases de données relationnelles, une telle comparaison nécessite l’étude des équivalences entre les requêtes et leurs résultats. Plus précisément, les équivalences de requêtes peuvent être vérifiées selon deux modèles, à savoir le modèle SQL et le modèle relationnel. Bien que plusieurs travaux de recherche aient déjà été menés pour la comparaison de requêtes et de résultats basés sur des équivalences syntaxiques et sémantiques, la plupart d’entre eux ne traitent pas les deux modèles. Dans ce mémoire, nous proposons quatre algorithmes: les deux premiers pour la vérification de l’équivalence sémantique (selon le modèle SQL et selon le modèle relationnel) et les deux autres algorithmes pour la vérification de l’équivalence des résultats (selon le modèle SQL et selon le modèle relationnel). Les deux premiers reposent principalement sur un algorithme proposé par Cohen. L’algorithme appliqué au modèle SQL prend en compte les nuls ainsi que sept paramètres, à savoir le nom des attributs, le nombre d’attributs, le nombre de lignes, le type des attributs, la valeur des attributs, l’ordre des attributs et l’ordre des lignes. L’algorithme appliqué au modèle relationnel prend en compte cinq paramètres, à savoir le nom des attributs, le nombre d’attributs, le nombre de lignes, le type des attributs et la valeur des attributs. Ces algorithmes s’appliquent pour un sous-ensemble important des requêtes SELECT (comprenant notamment les clauses GROUP BY et HAVING). Ils ont été mis en œuvre dans l’outil Themis que nous avons développé. Themis permet en outre de vérifier partiellement la syntaxe des requêtes
    corecore