Retour aux cours de Systemes d Information
Systemes d Information

Les Bases de Donnees

Les bases de données sont au coeur de tout système d information moderne. Elles permettent de stocker, organiser et manipuler des volumes considerables de données de manière structuree. De Carrefour a Doctolib, toutes les entreprises s appuient sur des bases de données performantes.

Objectifs du chapitre

  • Comprendre le modèle relationnel (entites, attributs, relations)
  • Maîtriser les bases du langage SQL
  • Garantir l integrite des données
  • Connaitre les principaux SGBD du marche

1. Le modèle relationnel

1.1 Concepts fondamentaux

Le modèle relationnel, invente par Edgar F. Codd en 1970, est le modèle dominant pour organiser les données. Il repose sur des tables (ou relations) composees de lignes (enregistrements) et de colonnes (attributs).

Vocabulaire essentiel :

  • Entite : objet du monde reel a modeliser (Client, Produit, Commande)
  • Attribut : propriete d une entite (nom, prix, date)
  • Tuple : ligne dans une table, represente une occurrence
  • Relation : lien entre deux entites (un client passe des commandes)

1.2 Les clés

Les clés sont essentielles pour identifier les enregistrements et etablir des liens entre les tables.

Cle primaire (PK)

Identifiant unique de chaque enregistrement dans une table. Exemple : id_client, numero_commande.

Cle etrangere (FK)

Reference vers la cle primaire d une autre table. Permet de creer des relations entre tables.

Exemple concret : E-commerce

Table CLIENTS :

id_client (PK) | nom | email | ville

Table COMMANDES :

id_commande (PK) | date | montant | id_client (FK)

La cle etrangere id_client dans COMMANDES référence id_client dans CLIENTS.

1.3 Les types de relations

TypeDescriptionExemple
1:1 (un a un)Un enregistrement correspond a un seul autreUn employe a un badge unique
1:N (un a plusieurs)Un enregistrement peut être lie a plusieurs autresUn client passe plusieurs commandes
N:M (plusieurs a plusieurs)Plusieurs enregistrements lies a plusieurs autresDes produits dans plusieurs commandes

2. Le langage SQL

SQL (Structured Query Language) est le langage standard pour interroger et manipuler les bases de données relationnelles. Il comprend plusieurs types d instructions.

2.1 SELECT - Interroger les données

L instruction SELECT permet de recuperer des données depuis une ou plusieurs tables.

-- Selectionner tous les clients

SELECT * FROM clients;

-- Selectionner certains champs avec condition

SELECT nom, email FROM clients WHERE ville = 'Paris';

-- Trier les résultats

SELECT * FROM produits ORDER BY prix DESC;

-- Jointure entre tables

SELECT c.nom, co.date, co.montant

FROM clients c

JOIN commandes co ON c.id_client = co.id_client;

2.2 INSERT - Ajouter des données

-- Inserer un nouveau client

INSERT INTO clients (nom, email, ville)

VALUES ('Dupont', 'dupont@email.fr', 'Lyon');

2.3 UPDATE - Modifier des données

-- Modifier l email d un client

UPDATE clients

SET email = 'nouveau@email.fr'

WHERE id_client = 42;

2.4 DELETE - Supprimer des données

-- Supprimer un client

DELETE FROM clients WHERE id_client = 42;

-- Attention : sans WHERE, supprime TOUT !

Attention au Bac

Toujours utiliser une clause WHERE avec UPDATE et DELETE pour eviter de modifier ou supprimer toutes les données de la table !

3. Integrite des données

L integrite des données garantit que les informations stockees sont correctes, coherentes et fiables.

Integrite d entite

Chaque table possede une cle primaire unique et non nulle. Aucun doublon n est permis.

Integrite referentielle

Les clés etrangeres doivent referencer des valeurs existantes dans la table parent.

Integrite de domaine

Les valeurs respectent le type et les contraintes definis (age positif, email valide).

Integrite utilisateur

Regles metier specifiques (un client ne peut avoir plus de 5 commandes en cours).

4. Les SGBD (Systemes de Gestion de Bases de Donnees)

Un SGBD est le logiciel qui permet de creer, gerer et interroger les bases de données. Il assure la securite, la performance et la coherence des données.

SGBDTypeUtilisation
MySQL / MariaDBOpen sourceSites web, PME, startups
PostgreSQLOpen source avanceApplications complexes, geospatial
Oracle DatabaseCommercialGrandes entreprises, banques
Microsoft SQL ServerCommercialEcosysteme Microsoft, entreprises
SQLiteEmbarqueApplications mobiles, navigateurs

Cas pratique : Amazon

Amazon utilise des dizaines de types de bases de données selon les besoins : Amazon Aurora (SQL pour les transactions), DynamoDB (NoSQL pour la rapidite), Redshift (data warehouse pour l analyse). Cette architecture permet de traiter plus d 1,5 million de transactions par minute pendant les pics de Black Friday.

5. Synthese et points clés

A retenir pour le Bac :

  • Le modèle relationnel organise les données en tables avec des clés primaires et etrangeres
  • SQL permet de manipuler les données : SELECT, INSERT, UPDATE, DELETE
  • L integrite des données garantit leur coherence et fiabilite
  • Les SGBD (MySQL, Oracle, SQL Server) gerent les bases de données

Erreurs frequentes a eviter

  • Oublier la clause WHERE dans UPDATE/DELETE
  • Confondre cle primaire et cle etrangere
  • Ne pas respecter l integrite referentielle
  • Creer des doublons dans les tables

Pour aller plus loin

Le prochain chapitre abordera les reseaux et la communication, qui permettent aux bases de données d être accessibles a travers l entreprise et le monde entier.