_______________________________________________________________________________
____________________________________________________________________________________________________________________________________ © Najib TOUNSI INTRODUCTION AUX BASES DE DONNÉES Najib TOUNSI Cours à l'usage des premières années informatique ____________________________________________________________________________________________________________________ © Najib TOUNSI 1 SOMMAIRE ✔ Concepts de Bases Base de Données Système Gestion de Bases de Données ✔ Niveau Interne Organisations des Fichiers H-Code, B-arbre, ISAM, Fichiers Indexes ✔ Modèles Relationnel de données Structure de Données Opérateurs de Manipulation Contraintes Référentielles ____________________________________________________________________________________________________________________ © Najib TOUNSI 2 CONCEPTS DE BASE ✔ Ce qu'est une Base de Données Fig. 1 - Schéma de Principe d'une BD ____________________________________________________________________________________________________________________ © Najib TOUNSI 3 ✔ Ce qu'est une Base de Données (BD) Une base de données est une collection de données stockées dans des fichiers et accessibles à la demande pour plusieurs utilisateurs et des besoins divers. Ces données représentent des informations servant aux activités et au management d'une entreprise. L'utilisateur dispose de moyens très élaborés pour effectuer un large éventail d'opérations: - Créations de nouveaux fichiers, - Consultation, ajout, modification ou suppression de données, - Calculs et éditions de résultats. - etc … Les langages et les outils logiciels pour effectuer ces opérations sont évolués et très pratiques ____________________________________________________________________________________________________________________ © Najib TOUNSI 4 Exemple: Soit le fichier concernant les employés d'une organisation EMPLOYES ------------------------------------------------------ NUM NOM PRENOM SALAIRE SERVICE ----------------------------------------------------- e01 benali ali 5500 personnel e04 benamine amine 6000 personnel e02 benhlima halima 5700 clients e10 bennani anis 7000 fournisseurs e23 benahmed ahmed 8500 clients e24 bensaid saida 6600 personnel e08 benazi aziz 7000 founisseurs e06 bendaoud daoud 7000 clients e20 bennouna anas 5400 clients e14 benkacem kacem 7800 direction ____________________________________________________________________________________________________________________ © Najib TOUNSI 5 ✘ Exemples d'interrogations: • Quel(le)s sont les personnes du service «clients» SELECT * FROM EMPLOYES WHERE SERVICE = "clients" Résultat: --------------------------------------------------- NUM NOM PRENOM SALAIRE SERVICE --------------------------------------------------- e02 benamina amina 5700 clients e23 benahmed ahmed 8500 clients e06 bendaoud daoud 7000 clients e20 bennouna anas 5400 clients ____________________________________________________________________________________________________________________ © Najib TOUNSI 6 • Afficher le nom de tous avec leur salaires SELECT NOM, SALAIRE FROM EMPLOYES -------------------- NOM SALAIRE -------------------- benali 5500 benamine 6000 benhlima 5700 bennani 7000 benahmed 8500 bensaid 6600 benazi 7000 bendaoud 7000 bennouna 5400 benkacem 7800 • Triés par salaire croissant SELECT NOM, SALAIRE FROM EMPLOYES ORDER BY SALAIRE -------------------- NOM SALAIRE -------------------- bennouna 5400 benali 5500 benhlima 5700 benamine 6000 bensaid 6600 benazi 7000 bendaoud 7000 bennani 7000 benkacem 7800 benahmed 8500 ____________________________________________________________________________________________________________________ © Najib TOUNSI 7 – Idem mais pour les personnes du service clients SELECT NOM, SALAIRE FROM EMPLOYES WHERE SERVICE = "clients" ORDER BY SALAIRE ----------------- NOM SALAIRE ----------------- bennouna 5400 benamina 5700 bendaoud 7000 benahmed 8500 ____________________________________________________________________________________________________________________ © Najib TOUNSI 8 ✘ Exemples d'interrogations avec calcul: • Calculer le salaire moyen SELECT AVG (salaire) FROM EMPLOYES ----- AVG ----- 7300 • Calculer le nombre d'employés SELECT COUNT (*) FROM EMPLOYES ----- COUNT ----- 10 ____________________________________________________________________________________________________________________ © Najib TOUNSI 9 ✘ Exemples de modifications: • Remplacer le salaire de l'employé «e06» par 8000 UPDATE EMPLOYES SET SALAIRE = 8000 WHERE NUM = "e06" • Ajouter un nouvel employé INSERT INTO EMPLOYES VALUES ("e09", "BenSalah", "Salah", 8500, "clients") ____________________________________________________________________________________________________________________ © Najib TOUNSI 10 ✔ Ce qu'est un Système de Gestion de Bases de Données (SGBD) Le SGBD, Système de Gestion de Bases de Données, est le logiciel intermédiaire entre l'utilisateur et la base et qui est chargé de réaliser toutes les opérations s'effectuant sur la BD. Niveau ß Logique Niveau ß Physique Fig. 2 -Un Système de Gestion de Bases de Données L'utilisateur a une vision logique des données, qui lui permet de les manipuler aisément (langages et interfaces de haut niveau) et de façon proche de ses besoins. C'est le SGBD qui se charge des considérations physiques liées au stockage des données sur disque et de la façon de les retrouver ou modifier (cf. TP fichiers). Le SGBD gère aussi les programmes que l'utilisateur développe et permet leurs exécutions à la demande. ____________________________________________________________________________________________________________________ © Najib TOUNSI 11 ✘ Rôle d'un SGBD: Un SGBD est en général, multi utilisateurs, multitâches. Il – Permet l'accès à la base à plusieurs utilisateurs simultanément – Traite en les optimisant les requêtes utilisateurs – Gère l'exécution cohérente de plusieurs programmes simultanés (accès concurrents) – Assure l'intégrité la sécurité, et la protection des données – Offre des moyens d'interaction, langages et interfaces, faciles à utiliser F Langage base de Donnée (LBD), permet de définir et de manipuler des données dans une base. Un LBD doit se conformer à un modèle de données évolué. F Un modèle de Données permet à l'utilisateur de percevoir les données dans une forme plus simple, par exemple des tables. (Forme dégagée des aspects techniques liés à la représentation en machine). F Un LBD est suffisamment complet pour être utilisé seul et de façon interactive pour diverses requêtes. F A cela s'ajoute la possibilité pour les non-initié(e)s de travailler sur la base via des interfaces conviviales (menus, écrans de saisies, affichages de graphiques, éditions de rapport etc.) Le SGBD contient les outils pour tout cela. ____________________________________________________________________________________________________________________ © Najib TOUNSI 12 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications ____________________________________________________________________________________________________________________ © Najib TOUNSI 12 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications ________________________________________________________________________________________________________________ Najib TOUNSI 13 Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Outils d'exploitation interactive, Programmation, Outils 4e Génération etc... __________________________________________________________________________________________________________________ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logiciell Externe. Orientée utilisateurs Couche logiciell interne. Orientée Fichie Langage d'Accès Unique ( e.g SQL) ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logiciel Externe. Orientée utilisateurs Couche logiciel interne. Orientée Fichi Noyau SGBD Accès Disques Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichier Fig 4 Composants d'un SGBD. Couche logicielle externe. ! Orientée utilisateurs Couche logicielle interne. ! Orientée Fichiers Outils d'exploitation interactive, Programmation, Outils 4e Génération etc... ____________________________________________________________________________________________________________________ © Najib TOUNSI 12 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications ____________________________________________________________________________________________________________________ © Najib TOUNSI 13 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Outils d'exploitation interactive, Programmation, Outils 4e Génération etc... ____________________________________________________________________________________________________________________ © Najib TOUNSI 13 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Langage d'Accès Unique ( e.g SQL) ____________________________________________________________________________________________________________________ © Najib TOUNSI 13 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Noyau SGBD Accès Disques ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Fig 4 Composants d'un SGBD. Couche logicielle externe. ! Orientée utilisateurs Couche logicielle interne. ! Orientée Fichiers Langage d'accès unique (e.g. SQL) ____________________________________________________________________________________________________________________ © Najib TOUNSI 12 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications ____________________________________________________________________________________________________________________ © Najib TOUNSI 13 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Outils d'exploitation interactive, Programmation, Outils 4e Génération etc... ____________________________________________________________________________________________________________________ © Najib TOUNSI 13 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, Outils 4e Génération etc... Langage d'Accès Unique ( e.g SQL) Noyau SGBD Accès Disques Base de Données Fig 4 Composants d'un SGBD. Couche logicielle Externe. Orientée utilisateurs Couche logicielle interne. Orientée Fichiers Langage d'Accès Unique ( e.g SQL) ____________________________________________________________________________________________________________________ © Najib TOUNSI 13 ✘ Structure Fonctionnelle d'un SGBD: Niveau des utilisateurs et des applications Outils d'Exploitation Conversationnelle, Programmation, uploads/Management/bd1-intro.pdf
Documents similaires










-
24
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Nov 11, 2022
- Catégorie Management
- Langue French
- Taille du fichier 2.5921MB