Revenir
Revenir

Les bases de données structurées

Une base de données permet de stocker et de retrouver des données structurées, semi-structurées ou brutes...

Sommaire

Découvrir les avantages des bases de données sur les tableursQu'est qu'une base de données et un SGBD ?Pourquoi utiliser une base de données plutôt qu'un tableur ?
La gestion d'une bibliothèque avec une base de donnéesGestion d'une bibliothèque : base de données relationnelleBase de données relationnelle d'une bibliothèque - Schéma
Créer une table de données avec des requêtes SQLRequête SQL pour créer une table de données - FichiersExemples de requête SQL pour rechercher des données

La gestion d'une bibliothèque avec une base de données

Gestion d'une bibliothèque : base de données relationnelle

Pour gérer les livres d'une bibliothèque, une base de données relationnelle peut être utilisée. Une telle base de données contient plusieurs tables qui sont liées entre elles grâce à des clés primaires et étrangères. Une clé primaire permet d'identifier d'une manière unique chaque enregistrement d'une table. Une clé étrangère permet de lier des tables entre elles.
Le schéma de la base de données comporte les tables ci-dessous.
Table "Livre": cette table stocke des informations sur les livres de la bibliothèque, telles que l'ID du livre, le titre du livre, l'auteur, l'éditeur, l'année de publication, le nombre de pages, le code ISBN, etc. Les descripteurs de cette base sont les suivants :
| ID_livre (clé primaire) | Titre | Auteur | Editeur | Annee_pub | Nbre_pages | ISBN | Cote |
Table "Emprunt": cette table stocke des informations sur les emprunts de livres, telles que l'ID de l'emprunt, l'ID du livre, l'ID de l'utilisateur emprunteur, la date d'emprunt et la date de retour. Les descripteurs de cette base sont les suivants :
| ID_emprunt (clé primaire) | ID_livre (clé étrangère) | ID_emprunteur (clé étrangère) | Date_emprunt | Date_retour |
Table "Utilisateur": cette table stocke des informations sur les utilisateurs de la bibliothèque, tels que l'ID de l'utilisateur, le nom, le prénom, l'adresse, le numéro de téléphone, etc. Les descripteurs de cette base sont les suivants :
| ID_emprunteur (clé primaire) | Nom | Prenom | Adresse | Telephone | Courriel |
La table "Livre" est liée à la table "Emprunt" par l'ID du livre, qui sert de clé étrangère dans la table "Emprunt". La table "Emprunt" est également liée à la table "Utilisateur" par l'ID de l'utilisateur emprunteur, qui sert également de clé étrangère dans la table "Emprunt".

Créer une table de données avec des requêtes SQL

Considérons le fichier amis.csv dont le contenu est le suivant :
-------------------------------
id, nom, prenom, age , ville
1, Dupont, Paul, 32, Paris
2, Martin, Sophie, 28, Lyon
3, Leclerc, Julie, 37, Nantes
-------------------------------
La requête SQL permettant de créer la table amis avec les 5 descripteurs "id", "nom", "prenom", "age" et "ville" est la suivante :
-------------------------------
CREATE TABLE amis (
   id INT PRIMARY KEY,
   nom VARCHAR(255),
   prenom VARCHAR(255),
   age INT,
   ville VARCHAR(255),
);
------------------------------
Lors de la création de la table, on doit préciser pour chaque descripteur son type :
  • INT --> integer / entier
  • VARCHAR(255) --> chaîne de caractères codée sur 1 octet (8 bits)
Le descripteur "id" sera la clé primaire de la table "amis" permettant d'identifier de manière unique chaque enregistrement de celle-ci.

Découvrir les avantages des bases de données sur les tableurs

Qu'est qu'une base de données et un SGBD ?

Une base de données permet de stocker et de retrouver des données structurées, semi-structurées ou brutes sur un support physique (disque dur par exemple). Les bases de données sont utilisées dans de nombreux domaines, tels que la gestion des stocks, la gestion des clients, la gestion des ressources humaines, la gestion des finances, la recherche scientifique...
LeSGBD (Système de Gestion de Bases de Données)est un logiciel qui permet de gérer et d'organiser les données dans une base de données. Il assure la gestion des accès, des droits d'utilisateurs, la protection des données, la sécurité et la sauvegarde des données. Les SGBD permettent également de créer, de modifier, de supprimer et de rechercher des données dans une base de données.
Il existe plusieurs types de SGBD, notamment les SGBD relationnels, les SGBD orientés objet et les SGBD NoSQL.
Les SGBD relationnels sont les plus couramment utilisés et fonctionnent sur la base de relations entre les tables qui sont des tableaux à 2 dimensions.
Les SGBD orientés objet sont basés sur la modélisation objet et permettent de stocker des objets directement dans la base de données.
Les SGBD NoSQL sont conçus pour gérer de grands volumes de données non structurées.
Voici quelques exemples de bases de données courantes et des SGBD utilisés pour les gérer.
  • Base de données de gestion des clients :utilisée pour stocker des informations sur les clients d'une entreprise, telles que leurs noms, adresses, numéros de téléphone, adresses e-mail, etc. 
  • Base de données de gestion des stocks :utilisée pour stocker des informations sur les stocks d'une entreprise, telles que les produits, les quantités disponibles, les coûts, les fournisseurs, etc.
  • Base de données de gestion des ressources humaines :utilisée pour stocker des informations sur les employés d'une entreprise, telles que leurs noms, adresses, numéros de téléphone, leurs informations de paie, leurs qualifications, etc. 
Il existe plusieurs éditeurs de SGBD : Oracle avec la solution éponyme ou MySQL, Microsoft avec Access ou SQL Server, le monde du libre avec MariaDB ou PostGreSQL.
Ces systèmes utilisent des commandes qui s’appellent des requêtes afin de réaliser des actions sur la base de données : consultation, modification, suppression…

Pourquoi utiliser une base de données plutôt qu'un tableur ?

Les tableurs comme Microsoft Excel ou LibreOffice Calc sont des outils utiles pour organiser et analyser des données sous forme de feuilles de calcul. Cependant, ils ne sont pas conçus pour gérer efficacement des bases de données lorsque celles-ci sont volumineuses. Voici quelques raisons pour lesquelles une base de données peut être préférable à un tableur.
1. Gestion de données plus complexes
Les bases de données peuvent stocker des données plus complexes et plus structurées que les tableurs. Elles permettent de stocker des données dans des tables (tableaux à 2 dimensions) avec des relations entre elles, ce qui facilite la manipulation et la recherche de données. Elle propose également un système de contrôle de l'intégrité des données permettant une vérification stricte de leurs valeurs.
2. Plus grande capacité
Les bases de données peuvent gérer de plus grandes quantités de données que les tableurs. Elles sont conçues pour stocker et gérer de grands volumes de données de manière efficace. Typiquement, un tableur peut gérer des fichiers de données de l'ordre du Mo. Une base de données, quant à elle, peut atteindre plusieurs Go.
3. Accès simultané pour plusieurs utilisateurs
Les bases de données peuvent gérer des accès simultanés pour plusieurs utilisateurs, ce qui permet à plusieurs personnes d'accéder et de modifier des données en même temps.
4. Sécurité
Les bases de données peuvent offrir des niveaux de sécurité plus élevés que les tableurs. Elles peuvent être protégées par des mots de passe et des autorisations d'accès spécifiques pour chaque utilisateur, ce qui permet de contrôler qui peut accéder et modifier les données.
5. Meilleure performance
Les bases de données sont optimisées pour offrir une performance élevée lors de la recherche et de la manipulation de grandes quantités de données. Les requêtes peuvent être exécutées rapidement et les résultats peuvent être affichés d'une manière optimisée.

En utilisant cette base de données, il est possible de répondre à des questions telles que "Quels sont les livres actuellement empruntés ?", "Quels sont les utilisateurs qui ont emprunté un livre en particulier ?" ou encore "Combien de livres a emprunté un utilisateur donné ?".

Base de données relationnelle d'une bibliothèque - Schéma


On procède ensuite au peuplement de la table "amis" avec la requête SQL suivante :
------------------------------
INSERT INTO amis (id, nom, prenom, age, ville)
VALUES (1, 'Dupont',  'Paul', 32, 'Paris'),
              (2, 'Martin',  'Sophie', 28, 'Lyon'),
              (3, 'Leclerc',  'Julie', 37, 'Nantes');
------------------------------
Une fois la table de données créée et peuplée, on peut extraire les données à l’aide d’une requête SQL SELECT. En combinant la requête SELECT avec WHERE, ORDER BY et GROUP BY il est possible de filtrer et trier les données selon les besoins de l’utilisateur.

Requête SQL pour créer une table de données - Fichiers

Exemples de requête SQL pour rechercher des données