SUPPORT DE COURS DE BASES DE
DONNEES
LPG3/LPGIE2
LPG3/LPGIE2
1 29/06/2020
Le langage de requêtes SQL
Caractéristiques
- la description, l'interrogation et la
manipulation des données d'une base
relationnelle.
- de déclarer les relations, de créer les
occurrences, de les modifier, et aussi de faire
toute opération définie par l'algèbre
relationnelle
LPG3/LPGIE2 2 29/06/2020
Le langage de requêtes SQL
Syntaxe SQL pour :
o Création d’une table
o Déclaration des clés
o Modification et suppression de tables
o Intégrité référentielle
o Insertion d’un enregistrement
o Modification d’un enregistrement
o Suppression d’un enregistrement
o Interrogation d’une base de données relationnelle
LPG3/LPGIE2 3 29/06/2020
Le langage de requêtes SQL
o Création d’une table
Exemple: Etudiant (numetud, nom, adresse,
datenaissance)
Create table Etudiant
( numetud number not null,
nom char(20),
adresse char(80),
datenaissance DATE);
LPG3/LPGIE2 4 29/06/2020
Le langage de requêtes SQL
oDéclaration de clés
La clé principale est définie à l'aide de la
fonction Primary Key.
Exemple:
CREATE TABLE Livre
(numlivre NUMBER NOT NULL PRIMARY KEY,
titre CHAR (30) NOT NULL,
auteur CHAR (20) ) ;
LPG3/LPGIE2 5 29/06/2020
Le langage de requêtes SQL
oDéclaration de clés(suite)
Lorsqu'une clé est composée, on peut la
déclarer après l'énumération des attributs:
CREATE TABLE Prêt
(numlivre NUMBER NOT NULL,
numlecteur NUMBER NOT NULL,
dateEmp DATE,
PRIMARY KEY (numlecteur, numlivre) ) ;
LPG3/LPGIE2 6 29/06/2020
Le langage de requêtes SQL
Modification et suppression d’une table
La modification d'une table se fait grâce à l'utilisation du Mot-clé Alter, et d'une
spécification de l'opération à effectuer.
L'ajout d'une colonne se fait avec le mot-clé Add.
Les modifications des caractéristiques d'une colonne avec Modify.
Exemple:
ALTER TABLE Etudiant
ADD numchambre char(5);
Ou encore
ALTER TABLE Etudiant
MODIFY adresse CHAR (100) ;
La suppression d'une table se fait grâce à l'utilisation du mot-clé Drop.
Exemple :
DROP TABLE Etudiant;
LPG3/LPGIE2 7 29/06/2020
Le langage de requêtes SQL
Intégrité référentielle
Elle permet de faire référence par un attribut d'une relation à une
clé d'une autre relation dont la valeur doit exister lorsque l'on
instancie l'attribut considéré. On utilise la fonction References.
Exemple:
CREATE TABLE Client
(numclient NUMBER NOT NULL PRIMARY KEY,
nomclient CHAR (20) );
CREATE TABLE Facture
(numfact NUMBER NOT NULL PRIMARY KEY,
montantfact NUMBER ,
numclient NUMBER NOT NULL REFERENCES Client(numclient));
LPG3/LPGIE2 8 29/06/2020
Le langage de requêtes SQL
o Insertion d’un enregistrement dans une table
L'insertion d'un enregistrement dans une table
se fait grâce l'utilisation du mot-clé Insert.
INSERT INTO TABLE nom de la table VALUES
(val_Champs1,val_champs2,...,val_champsN).
Exemple:
Insert into Etudiant values(7,« Cissé",« Village
K",« 03/11/1985")
Insert into Etudiant values(8,"Sall",« Village
A",« 20/09/1987")
LPG3/LPGIE2 9 29/06/2020
Le langage de requêtes SQL
o Suppression d’enregistrements d’une table
La suppression d'enregistrements dans une
table se fait grâce l'utilisation du mot-clé
Delete.
DELETE FROM nom de la table
WHERE condition.
Exemple:
DELETE FROM Etudiant WHERE numetud =7.
LPG3/LPGIE2 10 29/06/2020
Le langage de requêtes SQL
o Modification d’enregistrements d’une table
La modification d'enregistrements dans une table se
fait grâce l'utilisation du mot-clé Update.
UPDATE nom de la table
SET nouvelle valeur
WHERE condition(s) pour ligne(s) à modifier
Exemple:
UPDATE Etudiant
SET adresse = "Village J"
WHERE nom = "Sall".
LPG3/LPGIE2 11 29/06/2020
Le langage de requêtes SQL
o Interrogation d’une base de données relationnelle
Syntaxe générale SQL
SELECT [ * | DISTINCT] att1 [, att2, att3, ...]
FROM Table1 [, Table2, Table3, ...]
[WHERE conditions de sélection et/ou de jointure]
[GROUP BY att1 , att2, ...] [HAVING conditions de
sélection]]
[ORDER BY att1 [ASC | DESC] [, att2 [ASC | DESC],...] ;
[ ] : Optionnel
| : ou
LPG3/LPGIE2 12 29/06/2020
Le langage de requêtes SQL
Recherche des valeurs nulles
Le langage SQL permet aussi, grâce à l'expression
"Is [Not] Null » de vérifier si l'attribut est
renseigné ou non pour une occurrence
Opérations arithmétiques et foncions ensemblistes
Un ensemble d'opérateurs arithmétiques et de
fonctions ensemblistes a été défini par SQL. Elles
peuvent être utilisées dans la clause Select et
dans la clause Where.
LPG3/LPGIE2 13 29/06/2020
Le langage de requêtes SQL
Les opérateurs arithmétiques sont l'addition
(+), la soustraction (-), la multiplication (*) et
la division.
- Les fonctions ensemblistes sont :
. MAX: Fournit la valeur maximale
. MIN: Fournit la valeur minimale
. COUNT: Fournit la cardinalité d'un ensemble
. SUM: Somme de toutes les valeurs
. AVG : Moyenne de toutes les valeurs
LPG3/LPGIE2 14 29/06/2020
Le langage de requêtes SQL
Order by
La fonction Order By permet de présenter les
résultats triés par ordre ascendant (Asc) [par
défaut] ou descendant (DESC).
Partitionnement d'une relation - Group by
La fonction Group By permet de partitionner
la relation en parties distinctes sur un critère
donné de façon à appliquer une fonction
d'agrégation.
LPG3/LPGIE2 15 29/06/2020