UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Les Bases de do

UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Les Bases de données & SQL Filière : MIP & LST Youssef BALOUKI UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 2/118 Table des matières Chapitre 1 Modélisation et conception d’une Base de Données Relationnelle....................................... 6 PARTIE 1 SGBD PRINCIPE ET FONCTIONNEMENT .................................................................. 6 1. Généralités sur les bases de données....................................................................................... 6 1.1. Définition et Historique................................................................................................... 6 1.1.1. Système de Gestion de fichier................................................................................. 7 1.1.2. Système de Gestion de Base de données : SGBD................................................... 8 1.2. Objectifs de l'approche SGBD....................................................................................... 11 1.3. Architecture fonctionnelle d'un SGBD : ANSI-SPARC ............................................... 13 PARTIE 2 Analyse et Conception d’une Base de Données ............................................................. 17 2. Conception et modélisation................................................................................................... 17 2.1. Le modèle hiérarchique................................................................................................. 18 2.1.1. Les objets du modèle............................................................................................. 18 2.2. Le modèle réseau........................................................................................................... 22 2.3. Modèle relationnel......................................................................................................... 24 2.3.1. Introduction ........................................................................................................... 24 2.3.2. Définitions............................................................................................................. 24 2.3.3. Schéma de base de données relationnelle.............................................................. 26 2.3.4. Les redondances .................................................................................................... 26 2.3.5. Le dictionnaire de données.................................................................................... 27 2.3.6. Dépendances fonctionnelles.................................................................................. 30 2.3.7. Conséquence logique et clôture ............................................................................. 33 A. Conséquence logique (|=).......................................................................................... 33 B. Clôture (ou fermeture) d’un ensemble de dépendances ............................................ 34 C. Dépendances fonctionnelles élémentaires, transitives, directes ................................ 34 D. Calcul de la clôture d'un ensemble de dépendances.................................................. 35 E. Règles d'Amstrong.................................................................................................... 36 F. LA MATRICE DES DEPENDANCES FONCTIONNELLES SIMPLES ............... 36 G. Graphe des dépendances fonctionnelles.................................................................... 40 UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 3/118 H. Clé minimale et Fermeture d’un ensemble d’attribut X ............................................ 41 I. Couverture minimale d’un ensemble de dépendances............................................... 43 J. Décomposition sans perte.......................................................................................... 43 2.3.8. Les contraintes ....................................................................................................... 44 K. Contrainte de domaines ............................................................................................. 44 L. Contrainte d’Identifiant et clé.................................................................................... 45 M. Contrainte Clé primaire et clé candidate............................................................... 47 2.3.9. Formes normales ................................................................................................... 47 A. Première forme normale (1FN) ................................................................................. 47 B. Deuxième forme normale (2FN) ............................................................................... 48 C. Troisième forme normale (3FN) ............................................................................... 48 D. Forme normale de Boyce-Codd (FNBC)................................................................... 50 E. Dépendance multivaluée........................................................................................... 51 Chapitre 2 Algèbre Relationnelle.......................................................................................................... 56 2.1. PROJECTION ............................................................................................................... 56 2.2. Sélection........................................................................................................................ 57 3.1. Produit cartésien............................................................................................................ 59 3.2. UNION .......................................................................................................................... 61 3.3. Différence...................................................................................................................... 62 4.1. INTERSECTION .......................................................................................................... 63 4.2. Jointure .......................................................................................................................... 64 4.3. Division ......................................................................................................................... 66 Chapitre 3 Langage SQL ....................................................................................................................... 68 2.1. Schéma.......................................................................................................................... 69 2.2. Types de données.......................................................................................................... 70 2.2.1. Numérique................................................................................................................. 70 2.2.2. Date ........................................................................................................................... 70 2.2.3. Caractère.................................................................................................................... 71 2.2.4. Binaire ....................................................................................................................... 71 2.2.5. Valeur NULL ............................................................................................................ 72 2.2.6. Autres ........................................................................................................................ 72 2.3. Tables ............................................................................................................................ 72 UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 4/118 2.3.1. Table DUAL ......................................................................................................................... 72 2.3.2. Création d'une table ............................................................................................................. 72 2.4. Contrainte d'intégrité ............................................................................................................... 73 2.4.1. Définition .............................................................................................................................. 73 2.4.2. Les types de contraintes d'intégrité.................................................................................... 74 2.4.3. Ajouter, supprimer ou renommer une contrainte............................................................. 77 2.4.4. MODIFY CONSTRAINT Enlever une contrainte .......................................................... 77 2.5. Index ........................................................................................................................................... 78 2.5.1. CREATE INDEX................................................................................................................. 78 2.5.2. DROP INDEX ...................................................................................................................... 80 2.6. Vues ............................................................................................................................................ 80 2.6.1. CREATE VIEW ................................................................................................................... 81 2.6.2. DROP VIEW ........................................................................................................................ 82 2.6.3. Mise à jour avec une vue .................................................................................................... 82 2.7. Séquences .................................................................................................................................. 83 2.7.1. Création d'une séquence ...................................................................................................... 83 2.7.2. Utilisation d'une séquence .................................................................................................. 84 2.7.3. Modification d'une séquence .............................................................................................. 84 2.7.4. Suppression d'une séquence ............................................................................................... 84 3.1. Insertion ..................................................................................................................................... 85 3.2. Modification .............................................................................................................................. 86 3.3. Suppression ............................................................................................................................... 87 4.1. Syntaxe générale ....................................................................................................................... 88 4.2. Clause SELECT........................................................................................................................ 88 4.3. Clause FROM ........................................................................................................................... 89 4.4. Clause WHERE ........................................................................................................................ 90 4.4.1. Clause WHERE simple ....................................................................................................... 90 4.4.2. Opérateurs logiques ............................................................................................................. 91 4.5. Jointure ...................................................................................................................................... 92 4.5.1. Jointure naturelle .................................................................................................................. 93 4.5.2. Auto Jointure ........................................................................................................................ 93 4.5.3. Jointure externe .................................................................................................................... 94 UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 5/118 4.5.4. Jointure « non équi » ........................................................................................................... 95 4.6. Fonctions de groupes ............................................................................................................... 96 4.6.1. Clause GROUP BY ............................................................................................................. 97 4.6.2. Clause HAVING .................................................................................................................. 97 4.7. Fonctions ................................................................................................................................... 98 4.7.1. Fonctions arithmétiques ...................................................................................................... 98 4.7.2. Fonctions chaînes de caractères ...................................................................................... 100 4.7.3. Fonctions dates .................................................................................................................. 102 4.7.4. Fonctions de conversion................................................................................................... 103 4.8. Clause ORDER BY ............................................................................................................... 105 4.9. Opérateurs ensemblistes ....................................................................................................... 106 4.9.1. Opérateur UNION ............................................................................................................. 106 4.9.2. Opérateur INTERSECT ................................................................................................... 106 4.9.3. Opérateur MINUS ............................................................................................................. 107 4.10. Sous-interrogation ............................................................................................................. 107 4.10.1. Sous-interrogation Mono-ligne ....................................................................................... 107 4.10.2. Sous-interrogation Multi-ligne ........................................................................................ 109 4.10.3. Sous-interrogation synchronisée ..................................................................................... 109 4.10.4. Sous-interrogation ramenant plusieurs colonnes .......................................................... 110 4.10.5. Clause EXISTS ................................................................................................................. 111 5.1. Gestion de session ................................................................................................................. 112 5.2. Administration utilisateur..................................................................................................... 113 5.2.1. Créer un utilisateur ........................................................................................................... 113 5.2.2. Modifier le mot de passe des utilisateurs ....................................................................... 114 5.2.3. Supprimer un utilisateur ................................................................................................... 114 5.3. Les privilèges ......................................................................................................................... 115 5.4. Gestion des rôles ................................................................................................................... 116 5.4.1. Création de rôles ............................................................................................................... 117 5.4.2. Octroyer un rôle à un autre rôle ...................................................................................... 117 5.4.3. Modifier des rôles ............................................................................................................. 118 5.4.4. Pour Supprimer et désactiver un rôle ............................................................................. 118 5.4.5. Révoquer les privilèges d’un rôle ................................................................................... 118 UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 6/118 Chapitre 1 Modélisation et conception d’une Base de Données Relationnelle PARTIE 1 SGBD PRINCIPE ET FONCTIONNEMENT 1. Généralités sur les bases de données 1.1. Définition et Historique Une base de données est un ensemble structuré de données enregistrées avec le minimum de redondance pour satisfaire simultanément plusieurs utilisateurs de façon sélective en un temps opportun. Le concept de Base de Données (BDD) est apparu vers1960, face au nombre croissant d'informations que les entreprises devaient gérer et partager : Chaque nouvelle application créait alors ses propres fichiers de données et ses propres programmes ; le concept de base de données va à l'encontre de cette façon de procéder : il permet la centralisation, la coordination, l'intégration et la diffusion de l'information archivée. La base de données enregistre les faits ou événements qui surviennent dans la vie d'un organisme, pour les restituer à la demande : elle p ermet également de tirer des conclusions en rapprochant plusieurs faits élémentaires. Les données peuvent être manipulées par plusieurs tilisateurs ayant des vues différentessur ces données ("points de vue" différents). La structure d’ensemble des données suit une définition rigoureuseappeléeSCHEMA. Facteurs liés au développement des SGBD : • augmentation des capacités mémoire, et diminutiondes temps d'accès • apparition sur le marché d’applications fiables et diversifiées, qui doivent partager leurs données UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 7/118 • développement des systèmes de gestion en temps réel : "Gestion transactionnelle" • approche globale "orientée données" des problèmesde gestion : les données sont organisées de façon rationnelle plutôt que définies au coup par coup selon les applications à réaliser. Un système organisé autour d’une base de données est centré sur les données, contrairement aux systèmes de gestion plus anciens (et dépassés) basés sur les fonctions et les traitements (par exemple : chaîne de traitement de la paye, chaîne de la facturation, gestion des stocks, etc.) 1.1.1. Système de Gestion de fichier Dans l’approche gestion de fichiers, les fichiers sont définis pour un ou plusieurs programmes de traitement. Les données d’un fichier sont directement associées à un programme par une description contenue dans le programme de traitement lui-même. Il n’existe aucune indépendance entre le programme et les données. Toute modification de la structure des données nécessite la réécriture duprogramme. Toute manipulation de fichier exige trois niveaux d’intervention, et trois couches logicielles : - Gestion du support physique : disques durs, disquette, streamers  Pilote d’entrées-sorties (Driver)  - Gestion des structures internes des fichiers, et des méthodes d’accès : ouverture, fermeture, lecture, écriture  Système de gestion de fichiers (SGF)  - Gestion des contenus : calculs, tests, affichages ...  Programmes applicatifs UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 8/118 Figure 1 : Structure d’un SGF 1.1.2. Système de Gestion de Base de données : SGBD Un Système de Gestion de Base de Données (SGBD - DBMS) permet à un utilisateur de communiquer avec une base de données pour : - décrire et organiser les données sur les mémoiresecondaires (disques) - rechercher, sélectionner et modifier les données Un SGBD offre la possibilité à l’utilisateur de manipuler les représentations abstraites des données, indépendamment de leur organisation etde leur implantation sur les supports physiques (mémoires). Le SGBD reçoit des commandes aussi bien des program mes d'application que des utilisateurs : il commande les manipulations de données, généralement par l'intermédiaire d'un SGF. La figure, Structure d’un SGBD, indique les utilisations possibles des BDs gérées par un SGBD. UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 9/118 Figure 2 : Structure d’un SGBD Les fonctions essentielles d'un SGBD sont des fonctions d'organisation, d'interrogation et de contrôle des données : - Organisation : le Langage de Définition des Données (LDD) permet la structuration des données. Les utilisateurs de la base ne doivent pas se préoccuper de la structuration physique des données, celles-cisont donc vues et décrites avec un certain degré d'abstraction dans un langage spécifique, le LDD. - Le Langage de Manipulation de Données(LMD) associe souvent un langage de programmation et un langage d'interrogation. L'interrogation de la base doit être possible par des personnes de qualifications différentes : (programmeurs, utilisateurs finaux). UNIVERSITÉ HASSAN 1er FACULTE DES SCIENCES ET TECHNIQUES SETTAT Y.BALOUKI FST 10/118 - Le Gestionnaire uploads/Management/ ab75a-bd-cours.pdf

  • 26
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Oct 11, 2021
  • Catégorie Management
  • Langue French
  • Taille du fichier 5.3064MB