Système de gestion de bases de données Manipuler une base de données en utilisa

Système de gestion de bases de données Manipuler une base de données en utilisant le langage SQL. Première partie : SQL de base 1 ESSARRAJ Fouad essarraj.fouad@gmail.com Manipuler une base de données en utilisant le langage SQL. Module : SGBD1 Ce module de compétence nécessite comme pré requis l'enseignement du module "Conception et modélisation d'un système d'information", et constitue un préalable pour l'enseignement des modules : • "Système de gestion de bases de données II", • "Programmation Client/Serveur ", Description 2 • "Programmation de sites web dynamiques". Permet au stagiaire de manipuler une base de données en utilisant le langage SQL. ESSARRAJ Fouad Plan Introduction Chapitre 1 : Langage de requête SQL. Chapitre 2 : SGBDR. Chapitre 3 : Commandes de description de données . 3 ESSARRAJ Fouad Chapitre 4 : Commandes de manipulation des données . Chapitre 5 : Transactions. Chapitre 6 : Séquences, vues et indexes. Chapitre 7 : Sécurité des données. Chapitre 8 : Dictionnaire de données. Introduction 0 4 ESSARRAJ Fouad Le succès que connaissent les grands éditeurs de SGBD relationnels (IBM, Oracle, Microsoft, Sybase et Computer Associates) a plusieurs origines et repose notamment sur SQL :  Le langage est une norme depuis 1986 qui s’enrichit au fil du temps.  SQL peut s’interfacer avec des langages de troisième génération comme C ou Cobol, mais aussi avec des langages plus évolués comme C++ et Java. SQL, une norme, un succès 5 Java.  Les SGBD rendent indépendants programmes et données  Ces systèmes sont bien adaptés aux grandes applications informatiques de gestion (architectures type client-serveur et Internet)  Ils offrent la possibilité de stocker des informations non structurées (comme le texte, l’image, etc.) dans des champs appelés LOB (Large Object Binary).  Les principaux SGBD Open Source (MySQL, Firebird, Berkeley DB, PostgreSQL) ont adoptés depuis longtemps SQL pour ne pas rester en marge. Modèle de données La table relationnelle (relational table) est la structure de données de base qui contient des enregistrements, également appelés « lignes » (rows). Le modèle de données relationnel repose sur une théorie rigoureuse bien qu’adoptant des principes simples. 6 qui contient des enregistrements, également appelés « lignes » (rows). Une table est composée de colonnes (columns) qui décrivent les enregistrements. Les clés La clé primaire (primary key) d’une table est l’ensemble minimal de colonnes qui permet d’identifier de manière unique chaque enregistrement. Une clé est dite « candidate » (candidate key) si elle peut se substituer à la clé primaire à tout instant. Une table peut contenir plusieurs clés candidates ou aucune. 7 ESSARRAJ Fouad Une clé étrangère (foreign key) référence dans la majorité des cas une clé primaire d’une autre table (sinon une clé candidate sur laquelle un index unique aura été défini). Une clé étrangère est composée d’une ou plusieurs colonnes. Une table peut contenir plusieurs clés étrangères ou aucune. Notion de schéma Un schéma est un ensemble comprenant des structures de données et des données. Il appartient à un utilisateur de la base et porte le nom de ce dernier. Chaque utilisateur possède ainsi son propre schéma. Leurs éléments (objects) sont créés et modifiés par des ordres SQL. 8 La figure illustre deux utilisateurs travaillant sur leur schéma (stocké dans un espace de la base) par une interface qui peut être SQL*Plus ou un langage de programmation. SGBDR 1 9 ESSARRAJ Fouad Exploiter l’environnement du SGBDR pour interroger une base de données. Définition - Stockage persistant sur disque - «Très gros» volumes de données - Langage de requêtes et langages de programmation SGBD - Contexte multi-utilisateurs Une Base de Données (BD) est un ensemble de données mémorisées sur 10 des supports accessibles par un ordinateur pour satisfaire simultanément plusieurs utilisateurs de façon sélective et en un temps très court. Outil d’exploitation d’une BD : SGBD (Système de Gestion de Base de Données)  Gérer l’insertion, la modification et la recherche efficace de données dans une grande masse d’informations  Gérer l’interface entre les utilisateurs et le support sur lequel est stockée la BD (chacun doit avoir l’illusion qu’il est le seul à exploiter la BD) SGBD 11 la BD (chacun doit avoir l’illusion qu’il est le seul à exploiter la BD)  Indépendance physique: un SGBD permet de manipuler des données sans se soucier de la façon dont sont stockées physiquement ces données  Indépendance logique: un SGBD permet de présenter sous différentes vues les mêmes données (groupes de travail hétérogènes)  Manipulation par des non-informaticiens: un SGBD permet de décrire ce que l’on souhaite sans décrire comment l’obtenir(recherche déclarative) Les points clés d ’une BD 12 que l’on souhaite sans décrire comment l’obtenir(recherche déclarative)  Efficacité des accès aux données: un SGDB repose sur des algorithmes (transparents pour l’utilisateur) performants qui optimisent l’accès aux données  Centralisation des informations: un SGDB permet de centraliser les informations relatives à un domaine, ce qui :  garantie la non-redondance  minimise la perte de place Les points clés d ’une BD 13  minimise la perte de place  facilite les mises à jour des données  Cohérence des données: un SGBD permet de la vérification de contraintes d’intégrité  un salaire doit être compris entre 4000 et 10 000 DH  l’emprunteur d’un livre doit être un abonné de la bibliothèque  Partageabilité des données: un SGBD permet à plusieurs personnes Les points clés d ’une BD 14  Partageabilité des données: un SGBD permet à plusieurs personnes d’accéder simultanément aux données tout en offrant l’illusion d’être seul exploitant  Sécurité des données: un SGBD permet de gérer différents niveaux d’accessibilité aux données en fonction de profils d’utilisateurs – Indépendance entre les structures de stockage et les structures de données – Pouvoir modifier l'organisation physique sans modifier les programmes d’application – Exemple: ajouter un index Indépendance physique 15 – Pouvoir modifier le schéma conceptuel sans modifier les programmes d’application – Exemple : ajouter un attribut Indépendance logique 16 • Comme élément central : – Banques de données (professionnelles, grand public) – Systèmes transactionnels (banques, assurances,…) – Systèmes d’aide à la décision (tableaux de bord, analyse statistique,…) • Comme élément essentiel : – Systèmes d’information et de communication (entreprise, administration,…) Domaines d’application 17 administration,…) – Systèmes de surveillance et de contrôle (télécoms, production,…) • Comme élément auxiliaire : – Systèmes de recherche documentaire (textes,sons, graphiques, …) • Modèle de données : – Ensemble de concepts pour décrire : • Les données • Les liens entre les données • La sémantique des données – En général, un ensemble d’opérations est associé pour manipuler les données • Formalisme de description : – Textuel – Graphique Modélisation des données Modèles BD 18 – Graphique – Mathématique • Exemples de modèles : – Entité/association – Hiérarchique/réseau – Relationnel – Objet, relationnel-objet Modèle Entité/Association 0,1 0,n 3,n 1,n UV code Eleve num nom Livre cote titre S’inscrire Emprunter datePret Modèles BD 19 1,1 0,1 coord nom age adresse Chambre no prix note Louer ☺Avantages – Sémantique riche – Extension aux concepts objets (héritage, ...) – Aspect visuel ⇒Modèle de conception de BD Critique du modèle Entité/Association Inconvénients – Uniquement un modèle de description de données – Pas de langage de manipulation associé Modèles BD 20 – Pas de SGBD E/A ⇒Pas un modèle d’implantation de BD Système IMS d’IBM conçu à la fin des années 60 pour le programme Appolo (NASA) Exemple Modèle hiérarchique Modèles BD 21 UV Élève Chambre Livre Elève UV Schéma BD – Structure arborescente (forêt) BD – Collection d’enregistrements reliés par des pointeurs Langage de manipulation – Navigationnel et procédural – Utilisation de pointeurs Modèle hiérarchique (suite) Modèles BD 22 – Utilisation de pointeurs – (Exemple du langage DL/1 du système IMS) Problèmes : – Pas d’indépendance logique/physique – Redondance des données, risques d’incohérence Modèle défini par le groupe DBTG du comité CODASYL en 1971 (revu en 1978) Exemple Modèle réseau Modèles BD 23 Chambre Élève Inscrit Livre UV • Schéma BD – Structure de graphe orienté acyclique • BD – Collection d’enregistrements reliés par des pointeurs • Langage de manipulation – Navigationnel et procédural – Utilisation de pointeurs Modèle réseau (suite) Modèles BD 24 – Standard CODASYL 71, 78 • Systèmes – IDS2 d’Honeywell (1975), Total de Cincom (1974), Adabas de Soft. Ag (1978) • Problèmes – Pas d’indépendance logique/physique [CODD 70] « A Relational Model for Large Shared Data Banks » Exemple Élève(num, nom, adresse, age) UV(code, nbH, coord) Inscrit(numElève, codeUV, note) Livre(côte, titre, numElève, datePrêt) Chambre(no, prix, numElève) Modèle relationnel Modèles BD 25 Chambre(no, prix, numElève) Modèle relationnel (2) « MLD » Ecole UV ELEVE NUM LIVRE COTE NUM TITRE DATEPRET INSCRIT Modèles BD 26 UV CODE NBH COORD NUM NO NOM AGE ADRESSE DATEPRET CHAMBRE NO NUM PRIX INSCRIT CODE NUM NOTE • Schéma BD – Structure de relation • BD – Ensemble d’enregistrements reliés par des valeurs • Langage de manipulation – Ensembliste – Déclaratif – Standard international [ SQL 86, 89, 92 ou SQL2] • Prototypes de recherche Modèle relationnel (3) Modèles BD 27 • Prototypes de recherche – System/R chez IBM (1976), uploads/Management/ sgbd1-v3.pdf

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