BD-SMI5 1 FSA-AGADIR Sommaire Introduction Chapitre 1 7 1. Notion de Base de Do
BD-SMI5 1 FSA-AGADIR Sommaire Introduction Chapitre 1 7 1. Notion de Base de Données 7 2. Exemples de bases de données 7 3. Organisation d’une base de données 8 4. Données opérationnelles : Entités et association 12 5. Notion de système de gestion de base de données SGBD 12 6. Dictionnaire de base de données 13 7. Administrateur de base de données 13 8. Les avantages de base de données 13 9. Architecture de base de données 16 10. Fonctionnement d’un système de base de données 18 Chapitre 2 19 Le modèle relationnel 1. Domaine 19 2. Notion de produit cartésien 19 3. Relation 20 3.1. Définition 20 3.2. Représentation relation 20 3.3. Attribut 20 3.4. Schéma de relation 21 3.5. Exemple de relation 21 4. Clé primaire 22 4.1. Définition 4.2. Exemple 5. Clé étrangère 22 5.1. Définition 5.2. Exemple 6. Intégrité 23 6.1. Intégrité de domaine 6.2. Intégrité de relation 6.3. Intégrité de référence 7. Base de données relationnelle 23 7.1. Définition 7.2. Exemple de base de données relationnelle 8. Normalisation 25 9. Dépendance fonctionnelle 25 9.1. Définition 9.2. Exemples 26 10. Dépendance fonctionnelle complète 26 10.1. Définition 10.2. Notation BD-SMI5 2 FSA-AGADIR 10.3. Exemples 27 11. Dépendance fonctionnelle directe 27 11.1. Définition 11.2. Exemple 12. Dépendance fonctionnelle réflexive 28 12.1. Définition 12.2. Exemples 13. Les formes normales 28 13.1. Première forme normale 13.2. Deuxième forme normale 13.3. Troisième forme normale 29 14. Normalisation d’une base de données relationnelle 29 15. Graphe de dépendances fonctionnelles 30 15.1. Définition 15.2. Exemple 16. Exercices 31 16.1. Exercice 1 16.2. Exercice 2 Chapitre 3 32 L’algèbre relationnelle 1. Les opérateurs ensemblistes 32 1.1. L’opérateur produit cartésien 32 1.2. L’opérateur union 33 1.3. L’opérateur différence 36 1.4. L’opérateur intersection 37 2. Les opérateurs relationnels38 2.1. L’opérateur de projection 39 2.2. L’opérateur de sélection 40 2.3. Opérateurs de jointures 42 2.3.1. Jointure généralisée 2.3.2. L’opérateur Téta Jointure 45 2.3.3. L’opérateur Equi jointure 47 2.3.4. La jointure naturelle 47 2.3.5. Les jointures externes 50 2.3.5.1. La jointure externe complète 2.3.5.2. La jointure externe gauche 52 2.3.5.3. La jointure externe droite 53 3. Agrégation 54 3.1. Agrégation sans champ de partitionnement 55 3.2. Agrégation avec plusieurs champs de partitionnement 55 4. L’arbre algébrique 56 Chapitre 4 59 Langage de définition des données 1. La commande create 61 BD-SMI5 3 FSA-AGADIR 1.1. Création des bases de données 61 1.2. Création des tables 61 1.3. Création des index 67 1.4. Création des utilisateurs 69 2. La commande drop 69 2.1. Suppression des bases de données 69 2.2. Suppression des tables 69 2.3. Suppression des index 70 2.4. Suppression des utilisateurs 70 3. La commande alter70 3.1. Modification des tables 71 3.2. Modification des index 73 3.3. Modification des utilisateurs 74 Chapitre 5 75 Langage de manipulation des données 1. La commande insert 75 2. La commande update 77 3. La commande delete 78 4. La commande select 78 4.1. Projection simple 79 4.2. Sélection simple 80 4.3. Utilisation des opérateurs ensemblistes 84 4.3.1. L’opérateur union 84 4.3.2. L’opérateur intersect 86 4.3.3. L’opérateur Minus 87 4.3.4. Le produit cartésien 89 4.4. Les jointures 89 4.4.1. Jointures internes 4.4.1.1. Les jointures internes naturelles 89 4.4.1.2. Les jointures internes généralisés 90 4.4.2. Les jointures externes 90 4.4.2.1. Les jointures externes naturelles 90 4.4.2.2. Les jointures externes généralisée91 4.4.3. Auto-jointure 91 4.5. Les expressions d’agrégation ou de groupement 92 4.6. Le tri 96 5. Compléments 97 5.1. Les expressions chaînes de caractères 97 5.2. Les expressions date 98 BD-SMI5 4 FSA-AGADIR Chapitre 6 101 Langage de contrôle des données 1. Le contrôle des autorisations d’accès aux données 101 2. Privilèges et rôles 102 2.1. Définition de privilège 102 2.2. Privilège objet 102 2.3. Privilège système 102 2.4. Définition de rôle 102 2.5. Création de rôle 103 3. Octroie/Retrait de privilèges 103 3.1. La commande GRANT 103 3.1.1. Syntaxes de Grant 103 3.1.2. Les options de Grant 104 3.1.3. Privilèges et dictionnaire de données 105 3.2. La commande REVOKE 106 3.2.1. Syntaxes de Revoke 106 3.2.2. Revoke avec options 106 4. Exercices 107 Chapitre 7 109 Normalisation des relations 1. Dépendance fonctionnelle DF 109 1.1. Définition 1 109 1.2. Définition 2 109 1.3. Définition 3 110 1.4. Notation 110 1.5. Définition 4 110 2. Les propriétés de la dépendance fonctionnelle 110 2.1. Réflexivité 110 2.2. Augmentation 111 2.3. Transitivité 2.4. Union 2.5. Pseudo-transitivité 2.6. Décomposition 3. Fermeture d’un ensemble de dépendances fonctionnelles 111 3.1. Définition 1 111 3.2. Définition 2 112 3.3. Définition 3 112 3.4. Propriétés 112 3.5. Fermeture d’un ensemble d’attributs 112 3.6. La fermeture transitive d’un ensemble de dépendances fonctionnelles 113 3.6.1. Définition 3.7. Couverture minimale d’un ensemble de dépendances fonctionnelles 113 3.7.1. Définition BD-SMI5 5 FSA-AGADIR 3.7.2. Algorithme de calcul de couverture minimale 114 4. Normalisation des relations 114 4.1. Définition 4.2. Propriété 115 4.3. Décomposition sans perte 115 4.4. Propriété 4.5. Décomposition préservant les dépendances 115 4.6. Propriété 116 4.7. Décomposition d’une relation en 3 forme normale 116 4.7.1. Théorème 116 4.7.2. Algorithme de normalisation en 3 forme normale 116 4.8. Normalisation d’une relation en forme normale de Boyce-Codd 117 4.8.1. Définition 117 4.8.2. Propriété 118 4.8.3. Théorème 118 4.8.4. Algorithme de décomposition en FNBC 118 Références 121 BD-SMI5 6 FSA-AGADIR 4.1. Introduction Ce cours de bases de données est destiné aux étudiants de la licence inscrits au module de base de données de la filière SMI (Sciences Mathématiques et Informatique). Il présente les concepts essentiels des systèmes de gestion de bases de données que ce soit sur l’aspect théorique ou implémentation. Le premier chapitre traite des généralités sur les bases de données sans tenir compte des caractéristiques de leurs modèles. Le second chapitre montre les notions du modèle relationnel de base de données qui reste, jusqu’ à maintenant, le modèle dominant. Le troisième chapitre explique les opérateurs de l’algèbre relationnelle. Il montre comment on peut créer des requêtes simple ou complexe pour interroger une base de données relationnelle. Le chapitre quatre donne, au début, un aperçu du langage SQL(abréviation de Structured Query Language) langage de bases de données relationnelles. Ensuite, on y décrit les commandes du langage de définition de données, considéré comme sous-langage de SQL. Ces commandes incluent : - création des objets de base de données : base de donnés table, utilisateur, index, etc ; - suppression des objets de base de données ; - modification des structures des objets de base de données. Le chapitre cinq explique l’utilisation des commandes du langage de manipulation des données : recherche et calcul des données, insertion des données, suppression, et modification des données. Il montre aussi comment sont traduites les requêtes algébriques issues de la théorie des ensembles ou propres à l’algèbre relationnelle en requêtes SQL. Le sixième chapitre traite des commandes du langage de contrôle des données, commandes qui assurent la confidentialité dans le langage QL. Le chapitre 7 représente une introduction à la normalisation des relations. Il traite uniquement de la normalisation en troisième forme normale qui est la plus utilisée et de la normalisation en forme normale de Boyce-Codd. Pour approfondir les concepts vus dans ce cours, l’étudiant, s’il le juge nécessaire, peut consulter les ouvrages présentés en références à la fin de ce document. BD-SMI5 7 FSA-AGADIR Chapitre 1 Généralités et Concepts de Base Le but de ce chapitre est de définir de manière générale (loin de tout modèle) les concepts fondamentaux des bases de données. On va définir dans ce chapitre, ce qui est une base de données et en donner des exemples. Ensuite, on parlera des concepts entités et associations qui constituent les éléments de données de toute base de données. On expliquera aussi les concepts de système de gestion de base de données et ses fonctionnalités, de dictionnaire de base de données, de l’administrateur de base de données et ses fonctions. Après on expliquera certaines qualités de base de données et on terminera par donner l’architecture et le fonctionnement d’un système de base de données. 1. Notion de base de données Une base de données est une collection intégrée de données ou d’information modélisant un sujet ou un domaine donné. Elle stocke une masse importante de données. Pour simplifier le stockage et la restitution des données dans un système de base de données, les données sont organisées en structures qui dépendent du modèle de base de données utilisé. Plusieurs modèles de données sont utilisés en informatique. Parmi ces modèles, on cite le modèle relationnel qui est à la base de la majorité de bases de données actuellement utilisées. Ces bases de données sont nommées bases de données relationnelles. Dans la suite de notre cours, nous allons nous intéresser au modèle relationnel. Une base de données doit être consistante, elle doit refléter la réalité du sujet qu’elle modélise. 2. Exemples de bases de données Pour s’approcher plus des bases de données, on considère les exemples de bases de données suivants : Gestion d’une bibliothèque : les données que peut rassembler une base de données relative à une bibliothèque sont par exemple : - Des données sur les livres : uploads/s3/ cours-bd.pdf
Documents similaires










-
25
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jan 13, 2021
- Catégorie Creative Arts / Ar...
- Langue French
- Taille du fichier 3.3743MB