Introduction à MySQL

MySQL est un système de gestion de base de données relationnelle (SGBDR) open source largement utilisé.

Concepts de base

  • Base de données : Collection organisée de tables
  • Table : Structure qui stocke les données
  • Colonne : Champ dans une table
  • Ligne : Enregistrement dans une table
  • Clé primaire : Identifiant unique

Création de base de données

-- Créer une base de données
CREATE DATABASE ma_base;

-- Créer une table
CREATE TABLE utilisateurs (
    id INT PRIMARY KEY AUTO_INCREMENT,
    nom VARCHAR(50) NOT NULL,
    email VARCHAR(100) UNIQUE,
    date_creation DATETIME DEFAULT CURRENT_TIMESTAMP
);

Opérations CRUD

Create & Read

-- Insérer des données
INSERT INTO utilisateurs (nom, email)
VALUES ('Baptiste', 'baptiste@example.com');

-- Lire des données
SELECT * FROM utilisateurs;
SELECT nom, email FROM utilisateurs
WHERE id = 1;

Update & Delete

-- Mettre à jour des données
UPDATE utilisateurs
SET email = 'nouveau@example.com'
WHERE id = 1;

-- Supprimer des données
DELETE FROM utilisateurs
WHERE id = 1;

Jointures

SELECT u.nom, c.titre
FROM utilisateurs u
INNER JOIN commandes c
    ON u.id = c.utilisateur_id
WHERE c.date > '2024-01-01';
  • INNER JOIN
  • LEFT JOIN
  • RIGHT JOIN
  • FULL JOIN (via UNION)

Bonnes pratiques

  • Utiliser des clés primaires
  • Normaliser les tables
  • Indexer les colonnes fréquemment utilisées
  • Sécuriser contre les injections SQL
  • Optimiser les requêtes

Ressources utiles