Vous êtes sur la page 1sur 8

1

Filière : Génie Informatique(GI)- S2


Module : Système d’Information et Cours Elément 2 :
Base de Données Base de données : SGBD Oracle
Année universitaire : 2020/2021 Ecole Supérieure de Technologie
- UIT, Kénitra-

Partie SQL de base

I-Définition des données


Cette partie décrit les instructions SQL qui constituent l’aspect LDD (Langage de Définition
des Données) de SQL. À cet effet, nous verrons notamment comment déclarer une table, ses
éventuels contraintes et index.

1. Création des Tables relationnelles


Une table est créée en SQL par l’instruction CREATE TABLE, modifiée au niveau de sa
structure par l’instruction ALTER TABLE et supprimée par la commande DROP TABLE.
a) Création d’une table (CREATE TABLE) :
La syntaxe SQL simplifiée est la suivante :

 Exemple : Création d’une table et de ses contraintes

b) Les contraintes
Les contraintes ont pour but de programmer des règles de gestion au niveau des colonnes des
tables. Elles peuvent alléger un développement côté client (si on déclare qu’une note doit être
comprise entre 0 et 20.

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


2

 La contrainte UNIQUE impose une valeur distincte au niveau de la table (les valeurs
nulles font exception à moins que NOT NULL soit aussi appliquée sur les colonnes).
 La contrainte PRIMARY KEY déclare la clé primaire de la table. Un index est généré
automatiquement sur la ou les colonnes concernées. Les colonnes clés primaires ne
peuvent être ni nulles ni identiques (en totalité si elles sont composées de plusieurs
colonnes).
 La contrainte FOREIGN KEY déclare une clé étrangère entre une table enfant (child)
et une table père (parent). Ces contraintes définissent l’intégrité référentielle que nous
aborderons plus tard. La directive ON DELETE dispose de deux options : CASCADE
propagera la suppression de tous les enregistrements fils rattachés à l’enregistrement
père supprimé, SET NULL positionnera seulement leur clé étrangère à NULL.
 La contrainte CHECK impose un domaine de valeurs ou une condition simple ou
complexe entre colonnes (exemple : CHECK (note BETWEEN 0 AND 20),
CHECK (grade='Copilote' OR grade='Commandant')).
c) Les commentaires
Un commentaire sur une ligne précédée de deux tirets --, sur plusieurs lignes entre
/* et */).
 Exemple :

d) Conventions recommandées
Adoptez les conventions d’écriture suivantes pour vos contraintes :

a) Exemple :

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


3

2. Modification des tables :


L’instruction principalement utilisée est ALTER TABLE (commande du LDD) qui permet
d’ajouter, de renommer, de modifier et de supprimer des colonnes d’une table. Elle permet aussi
d’ajouter, de supprimer, d’activer, de désactiver et de différer des contraintes. Avant de détailler
ces mécanismes, étudions la commande qui permet de renommer une table.
a) Renommer une table (RENAME)
Syntaxe :

Exemple :

b) Ajout de colonnes :

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


4

La directive ADD de l’instruction ALTER TABLE permet d’ajouter une nouvelle colonne à
une table. Cette colonne est initialisée à NULL pour tous les enregistrements (à moins de
spécifier une contrainte DEFAULT, auquel cas tous les enregistrements de la table sont mis à
jour avec une valeur non nulle).
 Exemple :

c) Renommer des colonnes


Il faut utiliser la directive RENAME COLUMN de l’instruction ALTER TABLE pour
renommer une colonne existante. Le nom de la nouvelle colonne ne doit pas être déjà utilisé
par une colonne de la table.
 Exemple :

d) Modifier le type des colonnes


La directive MODIFY de l’instruction ALTER TABLE modifie le type d’une colonne
existante.

Exemple :

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


5

e) Supprimer des colonnes


Longtemps absente, la possibilité de supprimer une colonne permet à présent de récupérer
rapidement de l’espace disque et évite aux administrateurs d’exporter, d’ajouter, d’importer des
tables et de recréer les index et les contraintes.
La directive DROP COLUMN de l’instruction ALTER TABLE permet de supprimer une
colonne.

 Exemple :

f) Ajout de contraintes
La directive ADD CONSTRAINT de l’instruction ALTER TABLE permet d’ajouter une
contrainte à une table.
La syntaxe générale est la suivante :

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


6

 Exemple :

g) Suppression de contraintes
La directive DROP CONSTRAINT de l’instruction ALTER TABLE permet d’enlever une
contrainte d’une table.
La syntaxe générale est la suivante :

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


7

 Exemple :

h) Désactivation de contraintes
La directive DISABLE CONSTRAINT de l’instruction ALTER TABLE permet de désactiver
temporairement (jusqu’à la réactivation) une contrainte existante.

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-


8

i) Réactivation de contraintes
La directive ENABLE CONSTRAINT de l’instruction ALTER TABLE permet de réactiver
une contrainte.

Pr. R. Korchiyne DUT : Génie Informatique EST-UIT, Kenitra-

Vous aimerez peut-être aussi