Post

SQL

SQL

SQL – Résumé pratique (usage courant)

Qu’est-ce que SQL ?

SQL (Structured Query Language) est le langage utilisé pour :

  • créer des bases de données

  • créer des tables

  • ajouter des données

  • modifier des données

  • supprimer des données

  • effectuer des recherches

➡️ Utilisé avec SQLite, MySQL, PostgreSQL, MariaDB…


Une table SQL

Exemple d’une table élèves :

idnomprenomage
1DupontPaul18
2MartinSophie17

Création d’une table

1
2
3
4
5
6
CREATE TABLE eleves (
    id INTEGER PRIMARY KEY,
    nom TEXT,
    prenom TEXT,
    age INTEGER
);

Insertion d’une ligne

1
2
INSERT INTO eleves (nom, prenom, age)
VALUES ('Dupont', 'Paul', 18);

Afficher toutes les données

1
SELECT * FROM eleves;

Résultat :

1
1 | Dupont | Paul | 18

Afficher certaines colonnes

1
2
SELECT nom, prenom
FROM eleves;

Rechercher une ligne

1
2
3
SELECT *
FROM eleves
WHERE nom = 'Dupont';

Utilisation des opérateurs

1
2
3
SELECT *
FROM eleves
WHERE age > 18;

Opérateurs courants :

OpérateurSignification
=égal
<>différent
>supérieur
<inférieur
>=supérieur ou égal
<=inférieur ou égal

Trier les résultats

Par ordre croissant :

1
2
3
SELECT *
FROM eleves
ORDER BY nom;

Par ordre décroissant :

1
2
3
SELECT *
FROM eleves
ORDER BY nom DESC;

Modifier une donnée

1
2
3
UPDATE eleves
SET age = 19
WHERE id = 1;

⚠️ Toujours utiliser un WHERE lorsque c’est nécessaire.


Supprimer une ligne

1
2
DELETE FROM eleves
WHERE id = 1;

Supprimer toutes les lignes

1
DELETE FROM eleves;

⚠️ La structure de la table reste présente.


Supprimer une table

1
DROP TABLE eleves;

⚠️ La table et toutes ses données sont supprimées.


Compter des lignes

1
2
SELECT COUNT(*)
FROM eleves;

Rechercher avec LIKE

Commence par “Du” :

1
2
3
SELECT *
FROM eleves
WHERE nom LIKE 'Du%';

Contient “ont” :

1
2
3
SELECT *
FROM eleves
WHERE nom LIKE '%ont%';

Limiter le nombre de résultats

1
2
3
SELECT *
FROM eleves
LIMIT 10;

Valeurs NULL

Rechercher les lignes sans âge :

1
2
3
SELECT *
FROM eleves
WHERE age IS NULL;

SQL depuis Python (SQLite)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import sqlite3

connexion = sqlite3.connect("eleves.db")
curseur = connexion.cursor()

curseur.execute("""
    SELECT nom, prenom
    FROM eleves
""")

resultats = curseur.fetchall()

for eleve in resultats:
    print(eleve)

connexion.close()

Bonnes pratiques

  • Toujours sauvegarder avant des suppressions importantes.

  • Utiliser des clés primaires (PRIMARY KEY).

  • Éviter SELECT * dans les gros projets.

  • Utiliser des requêtes paramétrées en Python.

  • Toujours fermer la connexion à la base de données.


Requêtes paramétrées (recommandé)

1
2
3
4
5
6
nom = "Dupont"

curseur.execute(
    "SELECT * FROM eleves WHERE nom = ?",
    (nom,)
)

➡️ Évite les injections SQL.


À retenir

SQL permet de créer, rechercher, modifier et supprimer des données dans une base de données relationnelle.

Les quatre commandes fondamentales sont :

1
2
3
4
SELECT
INSERT
UPDATE
DELETE

Elles constituent la base de la majorité des applications utilisant une base de données.

This post is licensed under CC BY 4.0 by the author.