SQL (Structured Query Language) est un langage utilisé pour interagir avec les bases de données relationnelles. Il permet de gérer, manipuler et interroger des données efficacement. Ce cours couvre les bases, les fonctions avancées et des cas pratiques.
Les types de données les plus courants :
n).m chiffres, dont n après la virgule.Exemple d'une requête simple :
SELECT Nom, Prenom
FROM Employes
WHERE Salaire > 30000
ORDER BY Salaire DESC;
CREATE DATABASE GestionEntreprise;
USE GestionEntreprise;
Exemple de création d'une table "Employes" :
CREATE TABLE Employes (
ID INT AUTO_INCREMENT PRIMARY KEY,
Nom VARCHAR(50) NOT NULL,
Prenom VARCHAR(50),
Poste VARCHAR(50),
Salaire DECIMAL(10, 2),
DateEmbauche DATE
);
Les contraintes assurent l'intégrité des données :
INSERT INTO Employes (Nom, Prenom, Poste, Salaire, DateEmbauche)
VALUES ('Dupont', 'Jean', 'Développeur', 40000, '2022-01-15');
UPDATE Employes
SET Salaire = 45000
WHERE Nom = 'Dupont';
DELETE FROM Employes
WHERE Nom = 'Dupont';
Connecter plusieurs tables :
SELECT e.Nom, p.NomProjet
FROM Employes e
INNER JOIN Projets p ON e.ID = p.IDEmploye;
SELECT Nom, Prenom
FROM Employes
WHERE Salaire > (
SELECT AVG(Salaire) FROM Employes
);
SELECT COUNT(*) AS NombreEmployes, AVG(Salaire) AS SalaireMoyen
FROM Employes;
CREATE VIEW VueDeveloppeurs AS
SELECT Nom, Prenom, Salaire
FROM Employes
WHERE Poste = 'Développeur';
Garantir l'intégrité des opérations :
START TRANSACTION;
UPDATE Comptes SET Solde = Solde - 100 WHERE ID = 1;
UPDATE Comptes SET Solde = Solde + 100 WHERE ID = 2;
COMMIT;
Améliorer les performances :
CREATE INDEX IndexNom ON Employes(Nom);
GRANT SELECT, INSERT ON Employes TO 'utilisateur'@'localhost';