Le Langage SQL
Le Langage SQL
Le langage SQL
1
Chapitre 3 : Le langage SQL
2
Chapitre 3 : Le langage SQL
MySQL est actuellement développé, distribué et pris en charge par Oracle Corporation.
4
Chapitre 3 : Le langage SQL
Généralement en fonction des besoins informatiques, il existe trois types d’usagers de SQL :
- Administrateur d’applications
- Développeur d’applications
5
Chapitre 3 : Le langage SQL
Commande
Numéro Données Type Description
Numerique (entier)
1 N_cmd Numéro du client / Clé primaire
NuméroAuto
2 Date Date Date de la commande
3 Montant Numérique (entier) Montant de la commande
4 Quantité Numerique (entier) Quantité de la commande
5 Libellé Texte (15) Libellé de la commande
8
PARTIE A : LDD
LANGAGE DE DESCRIPTION DES DONNEES
9
Chapitre 3 : Le langage SQL
Syntaxe Exemple
CREATE DATABASE Nom_BDD CREATE DATABASE Gestion_Commande;
Syntaxe
SHOW DATABASES;
• Suppression de la base de données
Syntaxe Exemple
DROP DATABASE Nom_BDD DROP DATABASE Gestion_Commande;
10
Chapitre 3 : Le langage SQL
<élément-table>:= {<définition-colonne>|<contrainte-table>}
11
Chapitre 3 : Le langage SQL
) Contrainte de vacuité
ENGINE = InnoDB DEFAULT CHARSET= latin1;
12
Chapitre 3 : Le langage SQL
13
Chapitre 3 : Le langage SQL
) Contrainte de vacuité
15
Chapitre 3 : Le langage SQL
) Contrainte de vacuité
) Contraintes de domaine
ENGINE = InnoDB DEFAULT CHARSET= latin1;
Contraintes d'unicité
Contrainte de vacuité
17
Chapitre 3 : Le langage SQL
18
Chapitre 3 : Le langage SQL
19
Chapitre 3 : Le langage SQL
<modification-de-table> := {
MODIFY {<définition-colonne> }+ }
21
Chapitre 3 : Le langage SQL
22
Chapitre 3 : Le langage SQL
23
Chapitre 3 : Le langage SQL
24
PARTIE B : LMD
LANGAGE DE MANIPULATION DES DONNEES
25
Chapitre 3 : Le langage SQL
ou encore
26
Chapitre 3 : Le langage SQL
INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES ('CLT001', ‘Ba', ‘Alimatou', ‘Ndiaganiaw’);
INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES ('CLT002’, ‘Thioye’, ‘Djibril’, ‘Aere Lao’);
INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES (‘Thiam’, ‘Rokhaya’, ‘Thies’);
INSERT INTO Client (N_Clt, Nom, Prenom, Adresse ) VALUES (‘Ngom’, ‘Ibra’, ‘Dakar’);
27
Chapitre 3 : Le langage SQL
Attention :
Si la clause WHERE n'est pas indiquée, le champ précisé après SET sera modifié pour toutes les lignes de la table
Un même nom de colonne ne peut pas apparaître plus d'une fois dans l'instruction SQL.
29
Chapitre 3 : Le langage SQL
[ WHERE <condition>];
Exemple : Supprimons les produits dont la date d’expiration c’est à partir du 01/11/2018
Attention :
• En l’absence de la clause WHERE, tous les tuples de la table produit seront supprimés
[ HAVING <critère>]
[ ORDER BY <critère>]
31
Chapitre 3 : Le langage SQL
33
Chapitre 3 : Le langage SQL
34
Chapitre 3 : Le langage SQL
Les fonctions de groupe calculent les résultats à partir d'une collection de valeurs et restituent une valeur :
• COUNT ([DISTINCT | ALL] <nom-colonne>) comptage de toutes ou des valeurs distinctes (DISTINCT)
C. Exemple : Le nombre de ville distincte abritant les clients de nom commençant par « Dia »
38
Chapitre 3 : Le langage SQL
39
Chapitre 3 : Le langage SQL
Définition
C’est la possibilité de regrouper plusieurs lignes d'une même requête
Contenir
Num_cmd
Num_pro
40
Chapitre 3 : Le langage SQL
41
Chapitre 3 : Le langage SQL
HAVING permet d’exprimer des conditions sur l’ensemble des lignes retournées lors du GROUP BY
SELECT liste-exp1
FROM nom-table
[ WHERE condition ]
GROUP BY liste-expr2
HAVING condition-sur-lignes ;
42
Chapitre 3 : Le langage SQL
43
Chapitre 3 : Le langage SQL
45
Chapitre 3 : Le langage SQL
Exemple : Donner les noms et prénoms des clients ayant commandé ainsi que la date et le
montant de chaque commande.
SELECT Client.Nom, Client.Prenom, Commande.DateCmd, Commande.Montant
FROM Client, Commande
WHERE Client.N_Clt = Commande.N_Clt;
47
Chapitre 3 : Le langage SQL
En résumé CREATE
DROP
Structure des tables
LDD
ALTER
INSERT
SQL LMD
DELETE
Gestion des tables
UPDATE
SELECT
LCD
48
Chapitre 3 : Le langage SQL
49