Introduction à SQL
SQL (Structured Query Language) est le langage utilisé pour gérer et manipuler des bases de
données relationnelles. Il permet de créer, lire, mettre à jour et supprimer des données dans
ces bases. Les principales catégories d'opérations SQL sont :
1. Définition des données (DDL - Data Definition Language)
2. Manipulation des données (DML - Data Manipulation Language)
3. Contrôle des données (DCL - Data Control Language)
4. Contrôle des transactions (TCL - Transaction Control Language)
1. Création et Gestion des Tables
1.1. Création d'une Table
Pour créer une nouvelle table, utilisez CREATE TABLE. Voici un exemple :
sql
Copier le code
CREATE TABLE Employes (
ID INT PRIMARY KEY,
Nom VARCHAR(50),
Prenom VARCHAR(50),
DateNaissance DATE
);
1.2. Insertion de Données
Pour ajouter des données dans une table, utilisez INSERT INTO :
sql
Copier le code
INSERT INTO Employes (ID, Nom, Prenom, DateNaissance)
VALUES (1, 'Dupont', 'Jean', '1980-05-15');
1.3. Sélection des Données
Pour récupérer et afficher des données, utilisez SELECT :
sql
Copier le code
SELECT * FROM Employes;
Cette commande sélectionne toutes les colonnes et lignes de la table Employes.
1.4. Mise à Jour des Données
Pour modifier des données existantes, utilisez UPDATE :
sql
Copier le code
UPDATE Employes
SET Nom = 'Durand'
WHERE ID = 1;
1.5. Suppression des Données
Pour supprimer des enregistrements, utilisez DELETE :
sql
Copier le code
DELETE FROM Employes
WHERE ID = 1;
1.6. Suppression d'une Table
Pour supprimer complètement une table, utilisez DROP TABLE :
sql
Copier le code
DROP TABLE Employes;
2. Fonctions et Clauses
2.1. Filtrage avec WHERE
La clause WHERE permet de filtrer les résultats :
sql
Copier le code
SELECT * FROM Employes
WHERE Nom = 'Dupont';
2.2. Fonctions d'Agrégation
SQL propose des fonctions pour résumer les données, telles que COUNT, SUM, AVG, MIN, et MAX.
Par exemple :
sql
Copier le code
SELECT COUNT(*) AS NombreEmployes FROM Employes;
2.3. Jointures
Les jointures permettent de combiner des données de plusieurs tables. Par exemple, un INNER
JOIN :
sql
Copier le code
SELECT Employes.Nom, Departements.NomDepartement
FROM Employes
INNER JOIN Departements
ON Employes.ID = Departements.ID_Employe;
3. Contraintes et Index
3.1. Contraintes
Les contraintes assurent l'intégrité des données. Par exemple, pour définir une clé primaire :
sql
Copier le code
ALTER TABLE Employes
ADD CONSTRAINT PK_Employes PRIMARY KEY (ID);
3.2. Index
Les index améliorent les performances des requêtes. Par exemple :
sql
Copier le code
CREATE INDEX idx_nom ON Employes (Nom);
4. Transactions
Les transactions regroupent plusieurs opérations pour les traiter comme une seule unité.
Utilisez BEGIN TRANSACTION, COMMIT, et ROLLBACK pour gérer les transactions :
sql
Copier le code
BEGIN TRANSACTION;
INSERT INTO Employes (ID, Nom, Prenom, DateNaissance)
VALUES (2, 'Martin', 'Sophie', '1990-07-22');
COMMIT;
Si une erreur survient, vous pouvez annuler les opérations :
sql
Copier le code
ROLLBACK;