Cours SGBD 1 Concepts Et Langages Des Bases De Données .

3y ago
80 Views
2 Downloads
648.41 KB
224 Pages
Last View : 16d ago
Last Download : 3m ago
Upload by : River Barajas
Transcription

Cours SGBD 1Concepts et langages desBases de Données RelationnellesSUPPORT DE COURSIUT de Nice – Département INFORMATIQUEIUT de Nice - Cours SGBD11

PlanChapitre 1Introduction généraleChapitre 2Le modèle relationnelChapitre 3Présentation des donnéesChapitre 4L’algèbre relationnelleChapitre 5Le langage QBEChapitre 6Le langage SQLChapitre 7Gestion des transactionsChapitre 8Programmation avec VBAChapitre 9Les objets dans AccessChapitre 10L’interface DAOChapitre 11Le mode client serveur et ODBCChapitre 12Automation et le modèle DCOMIUT de Nice - Cours SGBD12

Chapitre 1Introduction généraleI.Notions intuitivesII.Objectifs et avantages des SGBDIII.L’architecture ANSI/SPARCIV.Notion de modélisation des donnéesV.Survol des différents modèles de donnéesVI.Bref historique,principaux SGBD commercialisésIUT de Nice - Cours SGBD13

I Notions intuitivesBase de donnéesensemble structuré de données apparentées quimodélisent un univers réelUne BD est faite pour enregistrer des faits, des opérations ausein d'un organisme(administration, banque, université, hôpital, .)Les BD ont une place essentielle dans l'informatique Système de Gestion de Base de Données (SGBD)DATA BASE MANAGEMENT SYSTEM (DBMS)système qui permet de gérer une BD partagée parplusieurs utilisateurs simultanémentIUT de Nice - Cours SGBD14

Des fichiers aux Base de DonnéesSéparation des données et des programmesFICHIERBASE DE DONNEESLes données des fichiers sontdécrites dans les programmesLes données de la BD sontdécrites hors des programmesdans la base iptionfichierProgrammesProgrammesLa multiplication des fichiers entraînait la redondance desdonnées, ce qui rendait difficile les mises à jour.D'où l'idée d'intégration et de partage des donnéesIUT de Nice - Cours SGBD15

IIObjectifs et avantages des SGBDQue doit permettre un SGBD ? Décrire les donnéesindépendamment des applications (de manièreintrinsèque) langage de définition des donnéesDATA DEFINITION LANGUAGE (DDL) Manipuler les donnéesinterroger et mettre à jour les donnéessans préciser d'algorithme d'accèsdire QUOI sans dire COMMENTlangage de requêtes déclaratifex.:quels sont les noms des produits de prix 100F ? langage de manipulation des donnéesDATA MANIPULATION LANGUAGE (DML)IUT de Nice - Cours SGBD16

Contrôler les donnéesintégritévérification de contraintes d'intégritéex.: le salaire doit être compris entre 400F et20000Fconfidentialitécontrôle des droits d'accès, autorisation langage de contrôle des donnéesDATA CONTROL LANGUAGE (DCL)IUT de Nice - Cours SGBD17

Partageune BD est partagée entre plusieurs utilisateurs enmême temps contrôle des accès concurrentsnotion de transactionL'exécution d'une transaction doit préserver lacohérence de la BD Sécuritéreprise après panne, journalisation Performances d'accèsindex (hashage, arbres balancés .)IUT de Nice - Cours SGBD18

Indépendance physiquePouvoir modifier les structures de stockage ou lesindex sans que cela ait de répercussion au niveau desapplicationsLes disques, les méthodes d’accès, les modes deplacement, le codage des données ne sont pasapparents Indépendance logiquePermettre aux différentes applications d’avoir desvues différentes des mêmes donnéesPermettre au DBA de modifier le schéma logique sansque cela ait de répercussion au niveau desapplicationsIUT de Nice - Cours SGBD19

III L’architecture ANSI/SPARC proposition en 75 de l’ ANSI/SPARC(Standard Planning And Requirement Comitte) 3 niveaux de représentation des donnéesEXTERNEVue 1Vue 2Schéma logiqueDICTIONNAIRE DE DONNEESCONCEPTUELSchéma physiqueSTRUCTURE DE DONNEESINTERNESGBDNiveaux de représentation des donnéesIUT de Nice - Cours SGBD110

Le niveau externeLe concept de vue permet d'obtenir l'indépendancelogiqueLa modification du schéma logique n’entraîne pas lamodification des applications(une modification des vues est cependant nécessaire)Chaque vue correspond à la perception d’une partie desdonnées, mais aussi des données qui peuvent êtresynthétisées à partir des informations représentées dansla BD (par ex. statistiques) Le niveau conceptuelil contient la description des données et descontraintes d’intégrité (Dictionnaire de Données)le schéma logique découle d’une activité demodélisation Le niveau interneil correspond aux structures de stockage et auxmoyens d’accés (index)IUT de Nice - Cours SGBD111

Pour résumer :Les fonctions des SGBD DEFINITION DES DONNEES Langage de définition des données (DDL)(conforme à un modèle de données) MANIPULATION DES DONNEESInterrogationMise à jourinsertion, suppression, modification Langage de manipulation des données (DML)(langage de requête déclaratif) CONTRÔLE DES DONNEESContraintes d'intégritéContrôle des droits d'accèsGestion de transactions Langage de contrôle des données (DCL)IUT de Nice - Cours SGBD112

IV Notion de modélisation des donnéesUNIVERS REELModèles sémantiquesOrientés « conception »Entité-Association, Merise MODELECONCEPTUELMCDModèles de BDHiérarchique, RéseauRelationnel SCHEMALOGIQUE Les modèles de BD sont souvent trop limités pourpouvoir représenter directement le monde réelMéthodologies de conception présentées en ACSI,SGBD2IUT de Nice - Cours SGBD113

Le modèle Entité-AssociationEA en français, ER en anglais (pour Entity Relationship)Formalisme retenu par l'ISO pour décrire l'aspectconceptuel des données à l’aide d’entités etd’associations Le concept d’entitéReprésentation d’un objet matériel ou immatérielPar exemple un employé, un projet, un bulletin de paieNom de l’entitéListe des propriétés Les entités peuvent être regroupées en typesd’entitésPar exemple, on peut considérer que tous les employésparticuliers sont des instances du type d’entité génériqueEMPLOYEPar exemple l’employé nommé DUPONT est une instance ouoccurrence de l’entité EMPLOYEIUT de Nice - Cours SGBD114

Les propriétésdonnées élémentaires relatives à une entitéPar exemple, un numéro d’employé, une date de débutde projet on ne considère que les propriétés qui intéressent uncontexte particulier Les propriétés d’une entité sont également appeléesdes attributs, ou des caractéristiques de cette entité L’identifiantpropriété ou groupe de propriétés qui sert à identifierune entitéL’ideintifiant d’une entité est choisi par l’analyste defaçon à ce que deux occurrences de cette entité nepuissent pas avoir le même identifiantPar exemple, le numéro d’employé sera l’identifiant del’entité EMPLOYEIUT de Nice - Cours SGBD115

Les associationsReprésentation d’un lien entre deux entités ou plus une association peut avoir des propriétés particulièresPar exemple, la date d’emprunt d’un livreadhérentexemplaireemprunterdate d’empruntIUT de Nice - Cours SGBD116

Les cardinalitésLa cardinalité d’une association pour une entitéconstituante est constituée d’une borne minimale etd’une borne maximale : Minimale : nombre minimum de fois qu’uneoccurrence de l’entité participe aux occurrences del’association, généralement 0 ou 1 Maximale : nombre maximum de fois qu’uneoccurrence de l’entité participe aux occurrences del’association, généralement 1 ou nPar exemple :adhérentexemplaireemprunter0,3date d’emprunt0,1 La cardinalité 0,3 indique qu’un adhérent peut êtreassocié à 0, 1, 2 ou 3 livres, c’est à dire qu’il peutemprunter au maximun 3 livres. A l’inverse un livre peut être emprunté par un seuladhérent, ou peut ne pas être emprunté.IUT de Nice - Cours SGBD117

Les cardinalités maximum sont nécessaires pourconcevoir le schéma de la base de données Les cardinalités minimums sont nécessaires pourexprimer les contraintes d’intégritéEn notant uniquement les cardinalités maximum,on distingue 3 type de liens : Lien fonctionnel 1:n Lien hiérarchique n:1 Lien maillé n:mIUT de Nice - Cours SGBD118

Lien fonctionnel1:nAB1nUne instance de A ne peut être associée qu'à une seuleinstance de BPar exemple :employédépartementtravaillen1Un employé ne peut travailler que dans un seuldépartementIUT de Nice - Cours SGBD119

Lien hiérarchique n:1ABn1Une instance de A peut être associée à plusieursinstances de BInverse d'un lien 1:ndépartementemployéemploien1Un département emploie généralement plusieursemployésIUT de Nice - Cours SGBD120

Lien maillén:mABnmUne instance de A peut être associée à plusieursinstances de B et inversementPar exemple :employéprojetparticipemnDe ce schéma, on déduit qu’un employé peut participerà plusieurs projets.IUT de Nice - Cours SGBD121

Exemple de diagramme Entité Associationest chef de1travailledirigea pour chefdépartementemployénn1nparticipemprojetIUT de Nice - Cours SGBD122

V Les différents modèles de données L'organisation des données au sein d'une BD a uneimportance essentielle pour faciliter l'accès et la miseà jour des donnéesHiérarchiqueLiens 1:NRéseauLiens N:MRelationnelLiens N:1IUT de Nice - Cours SGBD1SGBDR23

Les modèles hiérarchique et réseau sont issus dumodèle GRAPHE données organisées sous forme de graphe langages d'accès navigationnels(adressage par liens de chaînage) on les appelle "modèles d'accès"Le modèle relationnel est fondé sur la notionmathématique de RELATION introduit par Codd (recherche IBM) données organisées en tables (adressage relatif) stratégie d'accès déterminée par le SGBDIUT de Nice - Cours SGBD124

LE MODÈLE RÉSEAU Schéma logique représenté par un GRAPHEnoeudarc : article (représente une entité): lien hiérarchique 1:NExemple de shéma réseauCLIENTPRODUITVENTEDiagramme de Bachman Langage navigationnel pour manipuler les données Implémentation d'un lien par une liste circulaire :rRLSIUT de Nice - Cours SGBD1s1s225. sn

Exemple de schéma réseau :CLIENTSPRODUITSpxqyrx, pxpx, qqy, pyy, rrReprésentation d’une association N:M par 2 liensCODASYLIUT de Nice - Cours SGBD126

LE MODÈLE HIÉRARCHIQUE Schéma logique représenté par un ARBREnoeudarc : segment (regroupement de données): lien hiérarchique 1:NExemple de shéma hiérarchiqueCLIENTCLIENTPRODUITPRODUITVENTEVENTE Choix possible entre plusieurs arborescences(le segment racine est choisi en fonction de l'accès souhaité) Dissymétrie de traitement pour des requêtes symétriquesEn prenant l'ex. précédent, considérer les 2 requêtes :a)Trouver les no de produits achetés par le client xb)Trouver les no de clients qui ont acheté le produit pElles sont traitées différemment suivant le choix du segment racine(Client ou Produit) Adéquation du modèle pour décrire des organisations àstructure arborescente (ce qui est fréquent en gestion)IUT de Nice - Cours SGBD127

LE MODÈLE RELATIONNEL En 1970, CODD présente le modèle relationnel Schéma logique représenté par des RELATIONSLE SCHÉMA RELATIONNELLe schéma relationnel est l'ensemble des RELATIONSqui modélisent le monde réel Les relations représentent les entités du monde réel(comme des personnes, des objets, etc.) ou lesassociations entre ces entités Passage d'un schéma conceptuel E-A à un schémarelationnel- une entité est représentée par la relation :nom de l'entité (liste des attributs de l'entité)- une association M:N est représentée par la relation :nom de l'association (liste des identifiants des entités participantes,liste des attributs de l'association)IUT de Nice - Cours SGBD128

Ex . :CLIENT (IdCli, nom, ville)PRODUIT (IdPro, nom, prix, qstock)VENTE (IdCli, IdPro, date, qte)Représentation des données sous forme de tables Qte123456LES AVANTAGES DU MODÈLE RELATIONNELIUT de Nice - Cours SGBD129

SIMPLICITE DE PRÉSENTATION- représentation sous forme de tables OPÉRATIONS RELATIONNELLES- algèbre relationnelle- langages assertionnels INDEPENDANCE PHYSIQUE- optimisation des accès- stratégie d'accès déterminée par le système INDEPENDANCE LOGIQUE- concept de VUES MAINTIEN DE L’INTEGRITÉ- contraintes d'intégrité définies au niveau duschémaIUT de Nice - Cours SGBD130

VI Bref historique, principaux systèmesAnnées 60 Premiers développements des BD fichiers reliés par des pointeurssystèmes IDS 1 et IMS 1 précurseurs des SGBDmodernesAnnées 70 Première génération de SGBD apparition des premiers SGBDséparation de la description des données de lamanipulation de celles-ci par les applicationsmodéles hiérarchique et réseau CODASYLlangages d'accès navigationnelsSGBD IDMS, IDS 2 et IMS 2Années 80 Deuxième génération modèle relationnelles SGBDR représentent l'essentiel du marché BD(aujourd'hui)architecture répartie client-serveurAnnées 90 Troisième génération modèles de données plus richessystèmes à objetsOBJECTSTORE, O2IUT de Nice - Cours SGBD131

Principaux systèmes OracleDB2 (IBM)IngresInformixSybaseSQL Server (Microsoft)O2GemstoneSur micro : AccessParadoxFoxPro4DWindevSharewares : MySQLMSQLPostgresInstantDBIUT de Nice - Cours SGBD132

Chapitre 2I.Le modèle relationnelLES CONCEPTSII. LES DÉPENDANCESFONCTIONNELLESIII. LES RÈGLES D'INTÉGRITÉIV. LES FORMES NORMALESIUT de Nice - Cours SGBD133

ILES CONCEPTS LE DOMAINE LA RELATION LES N-UPLETS LES ATTRIBUTS LE SCHÉMA D’UNE RELATION LE SCHÉMA D’UNE BDR LA REPRÉSENTATIONIUT de Nice - Cours SGBD134

LE DOMAINEensemble de valeurs atomiques d'un certain typesémantiqueEx. :NOM VILLE { Nice, Paris, Rome } les domaines sont les ensembles de valeurs possiblesdans lesquels sont puisées les données deux ensembles peuvent avoir les mêmes valeursbien que sémantiquement distinctsEx. :NUM ELV { 1, 2, , 2000 }NUM ANNEE { 1, 2, , 2000 }IUT de Nice - Cours SGBD135

LA RELATIONsous ensemble du produit cartésien de plusieursdomainesR D1 D2 . DnD1, D2, . , Dn sont les domaines de Rn est le degré ou l’arité de REx.:Les domaines :NOM ELV { dupont, durant }PREN ELV { pierre, paul, jacques }DATE NAISS {Date entre 1/1/1990 et 31/12/2020}NOM SPORT { judo, tennis, foot }La relation ELEVEELEVE NOM ELV PREN ELV DATE NAISSELEVE { (dupont, pierre, 1/1/1992),(durant, jacques, 2/2/1994) }La relation INSCRIPTINSCRIPT NOM ELV NOM SPORTINSCRIPT { (dupont, judo), (dupont, foot),(durant, judo)}IUT de Nice - Cours SGBD136

LES N-UPLETSun élément d'une relation est un n-uplet de valeurs(tuple en anglais) un n-uplet représente un faitEx.:« Dupont pierre est un élève né le 1 janvier1992 »« dupont est inscrit au judo » DEFINITION PRÉDICATIVE D’UNE RELATIONUne relation peut être considérée comme un PRÉDICATà n variablesθ(x, y, z) vrai (x, y, z) REx. :est inscrit (dupont, judo) (dupont, judo) INSCRIPTIUT de Nice - Cours SGBD137

LES ATTRIBUTSChaque composante d'une relation est un attribut Le nom donné à un attribut est porteur de sens Il est en général différent du nom de domaine Plusieurs attributs peuvent avoir le même domaineEx. :La relation TRAJET :TRAJET NOM VILLE NOM VILLEDans laquelle la première composante représente la ville dedépart VD, la deuxième composante la ville d’arrivée VA d’untrajet.IUT de Nice - Cours SGBD138

LE SCHÉMA D’UNE RELATIONLe schéma d'une relation est défini par :- le nom de la relation- la liste de ses attributson note :R (A1, A2, . , An)Ex.:ELEVE (NOM, PRENOM, NAISS)INSCRIPT (NOM ELV, SPORT)TRAJET (VD, VA) Extension et Intension- L'extension d'une relation correspond à l'ensemblede ses éléments (n-uplets) le terme RELATION désigne une extension- L'intention d'une relation correspond à sasignification le terme SCHÉMA DE RELATION désignel'intention d'une relationIUT de Nice - Cours SGBD139

LE SCHÉMA D’UNE BDRLe schéma d'une base de données est défini par :- l'ensemble des schémas des relations qui lacomposentNotez la différence entre : le schéma de la BDR qui dit comment les donnéessont organisées dans la basel'ensemble des n-uplets de chaque relation, quireprésentent les données stockées dans la base Conception de Schéma Relationnel- Problème :Comment choisir un schéma approprié ?- Méthodologies de conception cours ACSI cours SGBD 2IUT de Nice - Cours SGBD140

LA REPRÉSENTATION1 RELATION 1 TABLEU1V1W1X1Y1U2V2W2X2Y2U3V3W3X3Y3X1Y11 ÉLÉMENT ou n-uplet 1 LIGNELIGNE 1 élémentU1V1W1 une relation est un ensemble on ne peut pas avoir 2 lignesidentiques1 ATTRIBUT 1 COLONNEU1U2U3 COLONNE1 attribut ou propriétéIUT de Nice - Cours SGBD141

Exemples :- La relation ELEVEELEVE :élément /1994duvalPaul3/03/81- La relation INSCRIPTINSCRIPT :élément NOM ELVSPORTDupontjudoDupontfootDurantjudo- La relation TRAJETTRAJET :élément IUT de Nice - Cours SGBD1VDVANiceparisParisromeRomenice42

Fenêtre Création de Table d’AccessAffichage d’une table dans AccessSélecteur d’enregistrementBoutons de déplacementIUT de Nice - Cours SGBD143

II LES DÉPENDANCESFONCTIONNELLESDépendance fonctionnelleSoit R(A1, A2, ., An) un schéma de relationSoit X et Y des sous ensembles de {A1,A2,.An)On dit que Y dépend fonctionnellement de X (X- Y) si àchaque valeur de X correspond une valeur unique de Yon écrit :X Yon dit que : X détermine YEx.:PRODUIT (no prod, nom, prixUHT)no prod (nom, prixUHT)NOTE (no contrôle, no élève, note)(no contrôle, no élève) note une dépendance fonctionnelle est une propriétésémantique, elle correspond à une contraintesupposée toujours vrai du monde réelD.F. élémentaireD.F. X - A mais A est un attribut unique non inclus dans X et iln’existe pas de X’ inclus dans X tel que X’ - AIUT de Nice - Cours SGBD144

La clé d’une relationattribut (ou groupe minimum d'attributs) qui déterminetous les autresEx.:PRODUIT (no prod, nom, prixUHT)no prod (nom, prixUHT)no prod est une clé Une clé détermine un n-uplet de façon unique Pour trouver la clé d'une relation, il faut examinerattentivement les hypothèses sur le monde réel Une relation peut posséder plusieurs clés, on lesappelle clés candidatesEx.:dans la relation PRODUIT, nom est une clé candidate (àcondition qu'il n'y ait jamais 2 produits de même nom)IUT de Nice - Cours SGBD145

Clé primairechoix d'une clé parmi les clés candidates Clé étrangère ou clé secondaireattribut (ou groupe d'attributs) qui fait référence à la cléprimaire d'une autre relationEx.:CATEG (no cat, design, tva)PRODUIT(no prod, nom, marque, no cat, prixUHT)no cat dans PRODUIT est une clé étrangèreCLÉ ÉTRANGÈRE CLÉ PRIMAIRE dans une autrerelationIUT de Nice - Cours SGBD146

III LES RÈGLES D'INTÉGRITÉLes règles d'intégrité sont les assertions quidoivent être vérifiées par les données contenuesdans une baseLe modèle relationnel impose les contraintesstructurelles suivantes : INTÉGRITÉ DE DOMAINE INTÉGRITÉ DE CLÉ INTÉGRITÉ RÉFÉRENCIELLE La gestion automatique des contraintes d’intégritéest l’un des outils les plus importants d’une basede données. Elle justifie à elle seule l’usage d’un SGBD.IUT de Nice - Cours SGBD147

INTÉGRITÉ DE DOMAINELes valeurs d'une colonne de relation doivent appartenirau domaine correspondant contrôle des valeurs des attributs contrôle entre valeurs des attributsIUT de Nice - Cours SGBD148

INTÉGRITÉ DE CLÉLes valeurs de clés primaires doivent être :- uniques- non NULL Unicité de clé Unicité des n-uplets Valeur NULLvaleur conventionnelle pour représenter uneinformation inconnue dans toute extension possible d'une relation, il ne peutexister 2 n-uplets ayant même valeur pour les attributscléssinon 2 clés identiques détermineraient 2 lignes identiques(d'après la définition d’une clé), ce qui est absurdeIUT de Nice - Cours SGBD149

INTÉGRITÉ RÉFÉRENCIELLELes valeurs de clés étrangères sont 'NULL' ou sont desvaleurs de la clé primaire auxquelles elles font référence Relations dépendantes LES DÉPENDANCES :Liaisons de un à plusieurs exprimées par des attributsparticuliers: clés étrangères ou clés secondairesIUT de Nice - Cours SGBD150

Les contraintes de référence ont un impact importantpour les opérations de mises à jour, elles permettentd’éviter les anomalies de mises à jourExemple :CLIENT (no client, nom, adr

Chapitre 5 Le langage QBE . Chapitre 8 Programmation avec VBA Chapitre 9 Les objets dans Access Chapitre 10 L’interface DAO Chapitre 11 Le mode client serveur et ODBC Chapitre 12 Automation et le modèle DCOM. IUT de Nice - Cours SGBD1 3 . LES AVANTAGES DU MODÈLE RELATIONNEL.

Related Documents:

Sujets Spéciaux (STT2000) cours d'option cours d'ouverture nouveau cours nouveau cours nouveau nouveau cours nouveau cours nouveau cours nouveau cours nouveau cours nouveau cours nouveau cours SAS / R!9. exemple d'horaire 2 1 Toutes les concentrations 9h 10h 11h 12h 13h 14h 15h 16h 17h 18h 19h 20h 21h Automne lundi mardi mercredi jeudi vendredi M1112 Calcul 1 M1112 Calcul 1 TP M1112 .

avis sur tout aspect de ces cours. Vos avis ou réactions peuvent inclure des observations sur : Le contenu et l'organisation des cours Les manuels de lecture et ressources des cours. Les exercices des cours. Les évaluations des cours. La durée des cours. Le soutien aux cours (tuteurs désignés, soutien technique,

Pour créer un autre prof de SVT, le plus simple est de retourner dans « cours/gestion des cours », de cliquer SVT et d’ajouter une sous-catégorie « Prof_SVT1 » Pour créer une autre matière (catégorie), le plus simple est de retourner dans « cours/gestion des cours », et de cliquer sur ajouter une autre catégorie de cours Présentation des pictogrammes liés aux catégories ou aux .

Le cours est normalement divisé en 12 semaines de cours plus les 2 examens. Le portail de cours étant modifié en cours de session, l'étudiant doit s'y référer aussi souvent que possible. L'étudiant doit répartir son temps entre le suivi du cours magistral, la résolution d'exercices en laborato

Histologie de l'appareil respiratoire (cours 3 et 4) p. 29 Embryologie et développement de l'appareil respiratoire (cours 5 et 6) p. 41 II PHYSIOLOGIE p. 50 Structure fonctionnelle (cours 10) p. 54 Mécanique ventilatoire (cours 11) p. 67 Transport des gaz dans le sang (cours 13) p. 87 Diffusion de gaz, DLCO (cours 14) p. 102

Ce cours s'adresse aux étudiants du cycle A du CNAM et a pour objectif l'étude des principes des SGBD relationnels et la mise en pratique de ces principes. Le contenu du cours est essentiellement le suivant: 1. Conception d'un schéma relationnel. Il s'agit de savoir définir un schéma relationnel complet et

cours fournira un complément de théorie. En plus du livre de référence, l’enseignant fournira d’autres documents d’appoint pour couvrir certains concepts. Planification des séances hebdomadaires Séance(s) Contenu prévu du cours S1 Entrée en matière Présentation du professeur, du plan de cours, de l’approche retenue pour le cours.

Application de base de données 6 - - - - 1.2. Système de gestion de bases de données (SGBD) Un SGBD* est un logiciel qui prend en charge la structuration, le stockage, la mise à jour et la maintenance d'une base de données