Vous êtes sur la page 1sur 4

INFORMATIQUE 2EME ANNEE

Cours 03
Langage SQL
Le SQL (Structured Query Language) est un langage permettant de communiquer avec une base de données.
Ce langage informatique est notamment très utilisé par les développeurs web pour communiquer avec les
données d’un site web.

 SQL est un langage de définition de données (LDD), il permet de créer des tables dans une base de
données relationnelle, ainsi que d'en modifier ou en supprimer.
 SQL est un langage de manipulation de données (LMD), il permet de sélectionner, insérer, modifier
ou supprimer des données dans une table d'une base de données relationnelle.
 SQL est un langage de protections d'accès : Il est possible avec SQL de définir des permissions au
niveau des utilisateurs d'une base de données. On parle de DCL (Data Control Language).
Création d'une base de données
La création d’une base de données en SQL est possible en ligne de commande. Même si les systèmes de gestion
de base de données (SGBD) sont souvent utilisés pour créer une base, il convient de connaître la commande à
utiliser, qui est très simple.
Syntaxe
Pour créer une base de données qui sera appelé « ma_base » il suffit d’utiliser la requête suivante qui est très
simple:
CREATE DATABASE ma_base
En SQL, la commande DROP DATABASE permet de supprimer totalement une base de données et tout ce
qu’elle contient.
DROP DATABASE ma_base
La création de tables
La création de tables se fait à l'aide du couple de mots-clés CREATE TABLE. La syntaxe de définition
simplifiée d'une table est la suivante :

CREATE TABLE Nom_de_la_table (Nom_de_colonne1 Type_de_donnée, Nom_de_colonne2


Type_de_donnée, ...);
Le nom donné à la table doit généralement (sur la plupart des SGBD) commencer par une lettre,
et le nombre de colonnes maximum par table est de 254.
Les types de données
Pour chaque colonne que l'on crée, il faut préciser le type de données
que le champ va contenir. Celui-ci peut être un des types suivants :

1
INFORMATIQUE 2EME ANNEE

Type de donnée Syntaxe Description

Type alphanumérique CHAR(n) Chaîne de caractères de longueur fixe n (n<16383)

Type alphanumérique VARCHAR(n) Chaîne de caractères de n caractères maximum (n<16383)

Type numérique NUMBER(n,[d]) Nombre de n chiffres [optionnellement d après la virgule]

Type numérique SMALLINT Entier signé de 16 bits (-32768 à 32757)

Type numérique INTEGER Entier signé de 32 bits (-2E31 à 2E31-1)

Type numérique FLOAT Nombre à virgule flottante

Type horaire DATE Date sous la forme 16/07/99

Type horaire TIME Heure sous la forme 12:54:24.85

Type horaire TIMESTAMP Date et Heure

La suppression de tables
Pour supprimer une table « nom_table » il suffit simplement d’utiliser la syntaxe suivante :
DROP TABLE nom_table
Pour supprimer toutes les données d’une table sans supprimer la table en elle-même. Nous utilisons la syntaxe
suivante :
TRUNCATE TABLE `table`
Modifier une table
La commande ALTER TABLE en SQL permet de modifier une table existante. Il est ainsi possible d’ajouter
une colonne, d’en supprimer une ou de modifier une colonne existante, par exemple pour changer le type.
Syntaxe de base
D’une manière générale, la commande s’utilise de la manière suivante:
ALTER TABLE nom_table instruction
Le mot-clé « instruction » ici sert à désigner une commande supplémentaire selon l’action que l’ont souhaite
effectuer : ajouter, supprimer ou modifier une colonne.
Ajouter une colonne
L’ajout d’une colonne dans une table est relativement simple et peut s’effectuer à l’aide d’une requête
ressemblant à ceci:
ALTER TABLE nom_table
ADD nom_colonne type_donnees
Supprimer une colonne
Une syntaxe permet également de supprimer une colonne pour une table :

2
INFORMATIQUE 2EME ANNEE

ALTER TABLE nom_table


DROP nom_colonne
Modifier une colonne
Pour modifier une colonne, comme par exemple changer le type d’une colonne, il y a différentes syntaxes selon
le SGBD.
MySQL
ALTER TABLE nom_table
MODIFY nom_colonne type_donnees
Renommer une colonne
Pour renommer une colonne, il convient d’indiquer l’ancien nom de la colonne et le nouveau nom de celle-ci.
ALTER TABLE nom_table
CHANGE colonne_ancien_nom colonne_nouveau_nom type_donnees
Manipulation de données : Ajout, Modification, Suppression
Ajout de données
Grâce au SQL, nous pouvons aussi ajouter des informations dans une table avec la commande INSERT INTO.
Pour ce faire, il faut indiquer la table dans laquelle on souhaite intégrer une ligne ainsi que la liste des champs
pour lesquels on spécifie une valeur, et enfin la liste des valeurs correspondantes.
Exemple :
INSERT INTO Clients (Numero, Nom, Prenom, Adress) VALUES (1, 'Chekroun', 'Ahmed', 'Tlemcen')
Ou
INSERT INTO Clients VALUES (1, 'Chekroun', 'Ahmed', 'Tlemcen')
Il est possible d’ajouter plusieurs lignes à un tableau avec une seule requête. Pour ce faire, il convient d’utiliser
la syntaxe suivante :
INSERT INTO Clients (Numero, Nom, Prenom, Adresse)
VALUES
(2, 'Benchachou', 'Amin', ‘Oran’),
(3, 'Ahfir', 'Saliha', ‘Tmouchent’);
Numero Nom Prenom Adresse
1 'Chekroun' 'Ahmed' 'Tlemcen'
2 'Benchachou' 'Amin' ‘Oran’
3 'Ahfir' 'Saliha' ‘Tmouchent’
Modification de données
On peut modifier certains champs d'enregistrements existants grâce au mot-clé UPDATE : cette instruction
permet de mettre à jour plusieurs champs de plusieurs enregistrements d'une table, à partir des expressions qui
lui sont fournies.

3
INFORMATIQUE 2EME ANNEE

Pour ce faire, vous devez indiquer le nom de la table à mettre à jour ainsi que les nouvelles valeurs à affecter
aux champs. Le mot-clé SET va permettre cette affectation.
Si l'on veut que les modifications ne se fassent que sur un ensemble limité d'enregistrements, on doit utiliser la
clause WHERE. Si aucune clause n'est indiquée, la modification se fera sur tous les enregistrements de la table!
Par exemple, pour modifier l’adresse d'un clients, on utilise le code suivant :
UPDATE Clients SET Adresse = 'Alger' WHERE Numero = 3
La modification de l’adresse du client ne portera ici que sur l'enregistrement qui porte le numéro 7! Tandis que si l'on
souhaite que la mise à jour soit globale, inutile de mettre de clause.
Suppression de données
Il se peut que l'on soit amené à supprimer un ou plusieurs enregistrements d'une table, il existe pour cela
l'instruction DELETE FROM. On doit alors fournir au minimum le nom de la table sur laquelle va s'effectuer la
suppression.
Si il y a uniquement le nom de la table de renseignée, alors tous les enregistrements de cette table seront
supprimés.
Pour limiter la suppression, on réutilise la clause WHERE.
La commande suivante efface tous les enregistrements de la table Clients :
DELETE FROM Clients
Tandis que celle-ci ne supprime qu'un seul enregistrement :
DELETE FROM Clients WHERE Numero = 2
Rechercher des informations
L’utilisation la plus courante de SQL consiste à lire des données issues de la base de données. Cela s’effectue
grâce à la commande SELECT, qui retourne des enregistrements dans un tableau de résultat. Cette
commande peut sélectionner une ou plusieurs colonnes d’une table.
Commande basique
SELECT nom_du_champ FROM nom_du_tableau
Cette requête SQL va sélectionner (SELECT) le champ « nom_du_champ » provenant (FROM) du tableau
appelé « nom_du_tableau ».
Si l’ont veut avoir la liste de toutes les villes des clients, il suffit d’effectuer la requête SQL ci-dessous :
SELECT Numero, Adresse FROM Clients
On obtient le tableau suivant :
Numero Adresse
1 'Tlemcen'
2 ‘Oran’
3 ‘Tmouchent’
Il est possible de retourner automatiquement toutes les colonnes d’un tableau sans avoir à connaître le nom de
toutes les colonnes. Au lieu de lister toutes les colonnes, il faut simplement utiliser le caractère « * » (étoile).
C’est un joker qui permet de sélectionner toutes les colonnes. Il s’utilise de la manière suivante:
SELECT * FROM Clients
4

Vous aimerez peut-être aussi