Info - Gestion Thème 2 Chap 3 La base de données Manuel p109 Notions et contenus à construire : - le schéma de la base de données : les tables, les enregistrements, les champs - la gestion des messages d’erreur grâce aux contraintes - les opérateurs relationnels (restriction, projection, jointure) Situation : La société SUPPORTER+ est spécialisée dans la commercialisation de maillots pour les clubs de supporters des équipes de football du championnat de France. Pour augmenter ses ventes, elle a développé une base de données commerciale, accessible par son site internet (e-commerce). I. L’organisation d’une base de données relationnelle L’ensemble des données concernant les clients est regroupé dans la TABLE Client. Numéro Nom Club Adresse BOR001 Ultra Bordeaux 25 avenue de Libourne – 33000 Bordeaux BOR002 Atlantique Bordeaux 32 rue de Lacanau – 33000 Bordeaux MAR001 Ultra Marseille 14 place de la Canebière – 13000 Marseille PSG001 Fanatic PSG 25 rue de Belleville – 75018 Paris Nom du responsable Alain Jires Claude Baiz Christophe Ouadle Louis Fernandaise Observez la table Client : - combien contient-elle d’attributs ? - combien contient-elle de tuples ? - quelle est sa clé primaire ? Numéro - que se passerait-il si le nom était choisi comme clé primaire ? problème d’homonymie Une table représente une relation sous forme d’un tableau. Tous les attributs forment les titres des colonnes. Les lignes correspondent aux tuples de la relation. Le logiciel les appelle des enregistrements. Observez la table Produit p 110 : - combien contient-elle d’attributs ? 4 - combien contient-elle de tuples ? 14 - quelle est sa clé primaire ? - est-elle correcte ? non car pas unique ; il faut ajouter taille ou un chiffre ex : MEXOML - les attributs sont-ils élémentaires ? que conseilleriez vous ? pb avec référence et désignation : choix à faire ref incluant taille ou désignation et taille Observez le message d’erreur lié à la rupture de stock « Valeur incorrecte pour ce champs »: - à quelle contrainte fait-il référence ? contrainte d’intégrité de domaine - quelle valeur doit être saisie dans « Quantité disponible » ? 0 A partir des autres tables fournies p 110 et 111 : Expliquez la cause du message d’erreur « Vous ne pouvez pas ajouter un nouvel enregistrement, car l’enregistrement associé est requis dans la table CLIENT ». C’est lié à la contrainte d’intégrité référentielle : pour utiliser une valeur de la clé étrangère, il faut déjà qu’elle existe en tant que clé primaire. 1 Info - Gestion II. Thème 2 Chap 3 Les opérateurs relationnels Une base de données est faite pour être utilisée. Différents outils sont disponibles : - les formulaires pour la saisie des informations, - les états pour obtenir des documents plus agréables à diffuser, - les requêtes pour interroger la base de données, c’est à dire en retirer uniquement les données utiles. Les requêtes peuvent être élaborées à partir de 2 types de langages : - le QBE (Query by Example) d’Access qui utilise une grille d’analyse, - le SQL (Structured Query Langage) qui utilise des mots clés en anglais et se cache derrière un grand nombre de logiciels (dont les logiciels comptables). Ce langage fera l’objet d’un chapitre spécial. Les opérateurs relationnels sont : - la projection qui sélectionne certaines colonnes d’une table, - la restriction qui sélectionne certaines lignes d’une tables (en comparant à un critère souhaité), - la jointure qui permet de lier 2 tables par un attribut commun. A partir des tables correctes présentées p 111 et 112, expliquez ce qu’il faut faire pour obtenir le résultat des requêtes suivantes puis le résultat des requêtes : Requête 1 : Obtenir le nom des clubs de supporters Procédé : Résultat : Dans la table client, il faut retenir uniquement la colonne NOM. NOM On a fait une projection Ultra Atlantlique Fanatic Histerik Requête 2 : Rechercher l’ensemble des propriétés des produits dont le prix unitaire est supérieur à 45€. Procédé : Dans la table Produit, il faut retenir toutes les colonnes mais seulement les lignes qui affichent un prix > à 45. Résultat : c’est une restriction sur le prix Référence Désignation Pris de vente HT Quantité disponible MDOOMXL Maillot domicile Marseille XL 46 26 MEXPSXL Maillot exterieur PSG XL 50 124 MEXPSL 50 59 MEXPSM 50 67 MDOMOU Maillot domicile Monaco Unique 60 247 MDOLYXL 52 10 Requête 3 : Rechercher les numéros des commandes concernant les clubs de supporters de l’équipe de Marseille Procédé : Dans la table Commande, il faut retenir la colonne CODE mais seulement les lignes qui affichent N°Client qui commence par MAR. Résultat : Pas de jointure nécessaire car info suffisante dans commande. CODE Restriction sur le numéro de client. 20040124 20040126 2