0% ont trouvé ce document utile (0 vote)
7 vues6 pages

Introduction au langage SQL en génie industriel

Le chapitre IV traite du langage SQL, un langage standard pour accéder aux bases de données, qui est divisé en plusieurs catégories d'instructions, notamment la définition, la manipulation, la protection des données et le contrôle des transactions. Le langage SQL permet de créer, modifier et supprimer des objets de base de données, ainsi que de gérer les droits d'accès et les transactions. Il est essentiel pour la gestion des données relationnelles, bien qu'il nécessite souvent d'être couplé avec un langage de programmation plus complet pour des traitements avancés.

Transféré par

assia djebar
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
7 vues6 pages

Introduction au langage SQL en génie industriel

Le chapitre IV traite du langage SQL, un langage standard pour accéder aux bases de données, qui est divisé en plusieurs catégories d'instructions, notamment la définition, la manipulation, la protection des données et le contrôle des transactions. Le langage SQL permet de créer, modifier et supprimer des objets de base de données, ainsi que de gérer les droits d'accès et les transactions. Il est essentiel pour la gestion des données relationnelles, bien qu'il nécessite souvent d'être couplé avec un langage de programmation plus complet pour des traitements avancés.

Transféré par

assia djebar
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Cours : Réseaux industriels

Licence 3: Génie industriel

Chapitre IV: Langage SQL

1. Introduction

Le langage SQL (Structured Query Language) peut être considéré comme le langage d'accès
normalisé aux bases de données. Il est aujourd'hui supporté par la plupart des produits
commerciaux que ce soit par les systèmes de gestion de bases de données micro tel que
l’application Access de Microsoft ou par les produits plus professionnels tels qu’Oracle. Il a fait
l'objet de plusieurs normes ANSI/ISO dont la plus répandue aujourd'hui est la norme SQL2 qui
a été définie en 1992.

Le succès du langage SQL est dû essentiellement à sa simplicité et au fait qu'il s'appuie sur le
schéma conceptuel pour énoncer des requêtes en laissant le SGBD responsable de la stratégie
d'exécution. Le langage SQL propose un langage de requêtes ensembliste et assertionnel.
Néanmoins, le langage SQL ne possède pas la puissance d'un langage de programmation :
entrées/sorties, instructions conditionnelles, boucles et affectations. Pour certains traitements il
est donc nécessaire de coupler le langage SQL avec un langage de programmation plus complet.

De manière synthétique, on peut dire que SQL est un langage relationnel, il manipule donc des
tables (i.e. des relations, c'est-à-dire des ensembles) par l'intermédiaire de requêtes qui
produisent également des tables.

2. Catégories d'instructions

Les instructions SQL sont regroupées en catégories en fonction de leur utilité et des entités
manipulées. Nous pouvons distinguer cinq catégories, qui permettent :

1. La définition des éléments d'une base de données (tables, colonnes, clés, index,
contraintes…),
2. La manipulation des données (insertion, suppression, modification, extraction…),
3. La gestion des droits d'accès aux données (acquisition et révocation des droits),
4. La gestion des transactions,

Enseignant: A. Bouakkaz 1
Université: 20 Aout 1955, Skikda
Année universitaire : 2022/2023
Cours : Réseaux industriels
Licence 3: Génie industriel

2.1. Langage de définition de données

Le langage de définition de données (LDD, ou Data Definition Language, soit DDL en anglais)
est un langage orienté au niveau de la structure de la base de données. Le LDD permet de créer,
modifier, supprimer des objets. Il permet également de définir le domaine des données (nombre,
chaîne de caractères, date, booléen…) et d'ajouter des contraintes de valeur sur les données. Il
permet enfin d'autoriser ou d'interdire l'accès aux données et d'activer ou de désactiver l'audit
pour un utilisateur donné.

Les instructions du LDD sont : CREATE, ALTER, DROP...

a. Création d’un schéma

Une base de données est définie par son schéma. Pour créer un schéma vide (sans tables), le
langage SQL propose l’instruction suivante :

CREATE SCHEMA nom_schema

Où est nom_schema est remplacé par la nouvelle base de données.

b. Création d’une table

Une table est un ensemble de lignes et de colonnes. La création consiste à définir (en fonction
de l'analyse) le nom de ces colonnes, leur format (type), la valeur par défaut à la création de la
ligne (DEFAULT) et les règles de gestion s'appliquant à la colonne (CONSTRAINT).

La commande de création de tables la plus simple ne comportera que le nom et le type de chaque
colonne de la table. À la création, la table sera vide, mais un certain espace lui sera alloué. La
syntaxe est la suivante :

CREATE TABLE nom_table (


nom_col1 TYPE1,
nom_col2 TYPE2,
... );
Quand on crée une table, il faut définir les contraintes d'intégrité que devront respecter les
données que l'on mettra dans la table.

Enseignant: A. Bouakkaz 2
Université: 20 Aout 1955, Skikda
Année universitaire : 2022/2023
Cours : Réseaux industriels
Licence 3: Génie industriel

 Types de données

Les principaux types de données peuvent être :

INTEGER : Ce type permet de stocker des entiers signés codés sur 4 octets.
BIGINT : Ce type permet de stocker des entiers signés codés sur 8 octets.
REAL : Ce type permet de stocker des réels comportant 6 chiffres significatifs codés sur 4
octets.
NUMERIC [(précision, [longueur])] : Ce type de données permet de stocker des données
numériques à la fois entières et réelles avec une précision de 1000 chiffres significatifs.
CHAR (longueur) : Ce type de données permet de stocker des chaînes de caractères de
longueur fixe.
DATE : Ce type de données permet de stocker des données constituées d'une date.
BOOLEAN : Ce type de données permet de stocker des valeurs Booléenne.

 Contraintes d'intégrité

NOT NULL : valeur null impossible.


UNIQUE : unicité d'un attribut.
PRIMARY KEY: clé primaire.
FOREIGN KEY: clé étrangère.
Une contrainte qui ne fait référence qu'à une seule colonne de la table peut faire partie
intégrante de la définition de colonne.

Exemple : Pour créer dans la base de données client_commande la table client, la


commande SQL est la suivante :

CREATE TABLE Client (


NCLI CHAR(8) NOT NULL,
NOM CHAR(18) NOT NULL,
ADRESSE CHAR(8) NOT NULL,
LOCALITE CHAR(20) NOT NULL,
CAT CHAR(2) DEFAULT NULL,
COMPTE DECIMAL(2) NOT NULL
PRIMARY KEY (NCLI) );

Enseignant: A. Bouakkaz 3
Université: 20 Aout 1955, Skikda
Année universitaire : 2022/2023
Cours : Réseaux industriels
Licence 3: Génie industriel

c. Suppression d’une table

Pour supprimer une table, le langage SQL propose l’instruction suivante :

DROP nom_table

Attention : Toutes les données ainsi que la structure de la table seront perdues à la suite de
cette opération.

2.2. Langage de manipulation de données

Le langage de manipulation de données (LMD, ou Data Manipulation Language, soit DML en


anglais) est l'ensemble des commandes concernant la manipulation des données dans une base
de données. Le LMD permet l'ajout, la suppression et la modification de lignes, la visualisation
du contenu des tables et leur verrouillage.

Les instructions du LMD sont : INSERT, UPDATE, SELECT, DELETE.

Ces éléments doivent être validés par une transaction pour qu'ils soient pris en compte.

a. Insertion de lignes dans une table

Pour ajouter une ligne dans une table on utilise l’instruction INSERT

INSERT INTO nom_table (Listes_coulnnes)


VALUES (liste_valeurs);

Exemple : Pour créer dans la base de données client_commande la table client, la


commande SQL est la suivante :

INSERT INTO Client (NCLI, NOM, ADRESSE)


VALUES (‘ABD’,’AHMED’, ‘SKIKDA’);

b. Modification de lignes d’une table

L’instruction pour modifier des valeurs dans les lignes d’une table est UPDATE :

UPDATE nom_table
SET nom_colonne = nouvelle_valeur;

Enseignant: A. Bouakkaz 4
Université: 20 Aout 1955, Skikda
Année universitaire : 2022/2023
Cours : Réseaux industriels
Licence 3: Génie industriel

Exemple : Pour la base de données client_commande, la requête :

UPDATE produit
SET prix = prix*1.5;

c. Extraction de données d’une table

L’extraction de données fait l’objet d’une seule commande : la requête SELECT

 Extraction simple

La requête select la plus simple et permet l’affichage de toutes les lignes d’une table, mais en
ne montrant que certaines colonne. Sa forme générale est :

SELECT liste_colonnes
FROM nom_table;

Exemple : Pour la base de données client_commande, la requête

SELECT NCLI, NOM, LOCALITE


FROM CLIENT

Affiche pour toutes les lignes de la table CLIENT seulement les valeurs des trois colonnes
NCLI, NOM, et LOCATE.

Pour obtenir les valeurs de toutes les colonnes, la requête est :

SELECT *
FROM CLIENT

 Extraction de lignes sélectionnées (conditionné)

Une requête de sélection contient dans la clause WHERE des conditions qui permettent de ne
sélectionner que certaines lignes d’une table. Sa forme générale est :

SELECT liste_colonnes
FROM nom_table
WHERE condition

Exemple : Pour la base de données client_commande, la requête

Enseignant: A. Bouakkaz 5
Université: 20 Aout 1955, Skikda
Année universitaire : 2022/2023
Cours : Réseaux industriels
Licence 3: Génie industriel

SELECT NCLI, NOM


FROM CLIENT
WHERE LOCALITE = ‘SKIKDA’

N’affiche que les lignes de la table client dont la valeur de la colonne LOCALITE est égale à
la chaine de caractères ’SKIKDA’. De plus, seules les valeurs des colonnes NCLI et NOM
seront affichées.

d. Suppression de lignes d’une table

L’instruction pour supprimer des lignes dans une table est DELETE :

SELECT FROM nom_table


WHERE condition
où le format de la condition de la clause WHERE est le même que celui de l’instruction
SELECT.

2.3. Langage de protections d'accès

Le langage de protections d'accès (ou Data Control Language, soit DCL en anglais) s'occupe
de gérer les droits d'accès aux tables.

Les instructions du DCL sont : GRANT, REVOKE.

2.4. Langage de contrôle de transaction

Le langage de contrôle de transaction (ou Transaction Control Language, soit TCL en anglais)
gère les modifications faites par le LMD, c'est-à-dire les caractéristiques des transactions et la
validation et l'annulation des modifications.

Les instructions du TCL sont : COMMIT, SAVEPOINT, ROLLBACK, SET TRANSACTION

Enseignant: A. Bouakkaz 6
Université: 20 Aout 1955, Skikda
Année universitaire : 2022/2023

Vous aimerez peut-être aussi