1
GENIE LOGICIEL : PROJETS SEDAMOP © Structured Query Language Catégorie : Sciences informatiques Numéro de projet : 31 Identifiant : SQL Contexte et objectif Un système de gestion de bases de données (SGBD) permet aux utilisateurs de stocker des données de façon structurée pour pouvoir ensuite les interroger suivant certains critères pour récupérer leurs données. Un SGBD relationnel fait intervenir des tables (ou relations) composées de lignes (tuples) et de colonnes (attributs). On appelle métadonnées le nom des colonnes du tableau. Le SGBD que vous aurez à programmer devra aussi permettre de pouvoir interroger les tables ainsi créées.Pour cela on utilisera une simplification du langage d'interrogation nommé SQL (Structured Query Language).On peut également lier plusieurs tableaux (jointure) par l'utilisation de jointure permettant de lier deux attributs. La création et suppression se feront également en utilisant le langage SQL simplifié : Création d'une nouvelle table. Ajout d'une donnée dans une table. Suppression de certaines données contenues dans une table Modification de certaines données contenues dans une table Modification du schéma d'une table : Ajouter une colonne. Modification du schéma d'une table : Supprimer une colonne. Modification du schéma d'une table : Changer un nom de colonne. Modification du schéma d'une table : Changer le type de données d'une colonne. Exigences Interroger les données de façon textuelle (SQL syntaxe restreinte) permettant à l'utilisateur de créer les tables de son choix, et de les remplir, de supprimer des tables ou des lignes et d'effectuer des requêtes d'interrogation de sélection et projection et jointure entre 2 tables. Sauvegarder la base sur disque et de la recharger. Vous gérez les erreurs éventuelles dans la requête commises par l’utilisateur. Implémentez votre solution avec les notions de l’algèbre relationnelle. Prenez en compte la performance du système. Pour cela, vous réalisez l’exécution des requêtes ayant des jointures entre N tables (avec N >= 3). Augmentez la taille des tables pour étudier la performance. (ex. plus de 1 000 000 lignes). Gérer les "undo/redo" sur N opérations. Afficher graphiquement le plan d’exécution d’une requête complexe. Réalisez l’interface graphique sous-forme de QBE (https://fr.wikipedia.org/wiki/Query_by_Example).

Structured Query Language - Depinfotliu/gl/projets/31-sql.pdf · Structured Query Language Catégorie : Sciences informatiques Numéro de projet : 31 Identifiant : SQL Contexte et

  • Upload
    lamtram

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Structured Query Language - Depinfotliu/gl/projets/31-sql.pdf · Structured Query Language Catégorie : Sciences informatiques Numéro de projet : 31 Identifiant : SQL Contexte et

GENIE LOGICIEL : PROJETS SEDAMOP©

Structured Query Language

Catégorie : Sciences informatiques Numéro de projet : 31 Identifiant : SQL

Contexte et objectif

Un système de gestion de bases de données (SGBD) permet aux utilisateurs de stocker des données de façon

structurée pour pouvoir ensuite les interroger suivant certains critères pour récupérer leurs données. Un SGBD

relationnel fait intervenir des tables (ou relations) composées de lignes (tuples) et de colonnes (attributs). On

appelle métadonnées le nom des colonnes du tableau.

Le SGBD que vous aurez à programmer devra aussi permettre de pouvoir interroger les tables ainsi créées.Pour

cela on utilisera une simplification du langage d'interrogation nommé SQL (Structured Query Language).On peut

également lier plusieurs tableaux (jointure) par l'utilisation de jointure permettant de lier deux attributs. La

création et suppression se feront également en utilisant le langage SQL simplifié :

Création d'une nouvelle table.

Ajout d'une donnée dans une table.

Suppression de certaines données contenues dans une table

Modification de certaines données contenues dans une table

Modification du schéma d'une table : Ajouter une colonne.

Modification du schéma d'une table : Supprimer une colonne.

Modification du schéma d'une table : Changer un nom de colonne.

Modification du schéma d'une table : Changer le type de données d'une colonne.

Exigences

Interroger les données de façon textuelle (SQL syntaxe restreinte) permettant à l'utilisateur de créer les tables

de son choix, et de les remplir, de supprimer des tables ou des lignes et d'effectuer des requêtes d'interrogation

de sélection et projection et jointure entre 2 tables. Sauvegarder la base sur disque et de la recharger. Vous gérez

les erreurs éventuelles dans la requête commises par l’utilisateur. Implémentez votre solution avec les notions

de l’algèbre relationnelle.

Prenez en compte la performance du système. Pour cela, vous réalisez l’exécution des requêtes ayant des

jointures entre N tables (avec N >= 3). Augmentez la taille des tables pour étudier la performance. (ex. plus de

1 000 000 lignes). Gérer les "undo/redo" sur N opérations. Afficher graphiquement le plan d’exécution d’une

requête complexe.

Réalisez l’interface graphique sous-forme de QBE (https://fr.wikipedia.org/wiki/Query_by_Example).