Vous êtes sur la page 1sur 5

1/5

CREATE TABLE nom_table ( défintion_colonne, défintion colonne2,…)

défintion_colonne :
nom_colonne type[[NOT] NULL] [DEFAULT valeur][contrainte_colonne]

Types de champs :
 INT (n) : numérique à n chiffres
 DECIMAL (n, m) : numérique à n chiffres dont m décimales.
 VARCHAR (n) : chaîne variable de longueur n.
 CHAR(n) : chaîne de caractères de longueur fixe.
 TEXT : chaîne de caractères de longueur variable.
 DATE : Date
 TIME : temps

contrainte_colonne
PRIMARY KEY
|REFERENCES nom_table[(nom_colonne)][ON DELETE CASCADE]
|CHECK(condition)

2/5
- PRIMARY KEY : la colonne est une clé primaire.

- CHECK : associé à une condition qui doit être vérifiée pour chaque valeur insérée

CREATE TABLE classes (COD_CLAS VARCHAR(5) PRIMARY KEY, DES_CLAS


VARCHAR(35) NOT NULL, NB_ELEV INT(2) DEFAULT 25 CHECK (NB_ELEV
<=40)) ;

CREATE TABLE ELEVES (NUM_ELEV INT(5) PRIMARY KEY, NOM


VARCHAR(25) NOT NULL, PRENOM VARCHAR(25) NOT NULL, DAT_NAIS
DATE NOT NULL, TEL INT(8) NOT NULL DEFAULT 11111111, COD_CLAS
VARCHAR(5) REFERENCES CLASSES(COD_CLAS) ON DELETE CASCADE) ;

3/5
Ou bien
CREATE TABLE ELEVES (NUM_ELEV INT(5) CONSTRAINT PK_E PRIMARY
KEY, NOM VARCHAR(25) NOT NULL, PRENOM VARCHAR(25) NOT NULL,
DAT_NAIS DATE NOT NULL, TEL INT(8) NOT NULL DEFAULT 11111111,
COD_CLAS VARCHAR(5) CONSTRAINT FK_EC REFERENCES
CLASSES(COD_CLAS) ON DELETE CASCADE) ;

NB : Le laguage SQL n’est pas sensible à la casse.

Description de la table « NOTES »


Nom de champs Description contraintes
NUM_ELEV Entier de 5 chiffres Clé étrangère qui se réfère à la table
ELEVES et fait partie de la clé primaire
COD_MAT Chaîne de 6 caractères Clé étrangère qui se réfère à la table
MATIERES et fait partie de la clé primaire
NOC, NOS Décimal(5,2) Doivent être entre 0 et 20

CREATE TABLE NOTES (NUM_ELEV INT(5) REFERENCES


ELEVES(NUM_ELEV) ON DELETE CASCADE, COD_MAT VARCHAR(8)
REFERENCES MATIERES(COD_MAT) ON DELETE CASCADE, NOC
DECIMAL(5,2) CHECK(NOC BETWEEN 0 AND 20), NOS DECIMAL(5,2)
CHECK(NOS BETWEEN 0 AND 20),
PRIMARY KEY(NUM_ELEV, COD_MAT)).
Ou bien
CREATE TABLE NOTES (NUM_ELEV INT(5) CONSTRAINT FK_NE
REFERENCES ELEVES(NUM_ELEV) ON DELETE CASCADE, COD_MAT
VARCHAR(8) CONSTRAINT FK_NM REFERENCES MATIERES(COD_MAT)
ON DELETE CASCADE, NOC DECIMAL(5,2) CHECK(NOC BETWEEN 0 AND
20), NOS DECIMAL(5,2) CHECK(NOS BETWEEN 0 AND 20), CONSTRAINT
PK_Notes PRIMARY KEY(NUM_ELEV, COD_MAT)).

Expression logique
Opérateur Signification
=,>,<,>=,<= et <> Opérateurs de comparaison ente valeurs
numériques, chaînes de caractères ou date
BETWEEN Pour les intervalles, les bornes sont incluses
IN Pour les listes de valeurs
IS NULL et IS NOT NULL Pour les valeurs indéterminées
LIKE Pour filtrer une chaîne de caractères
4/5
Les opérateurs AND, OR et NOT

IV. Modification de la structure d’une BD en mode commande :


1. Modification de la structure d’une table :
La forme générale de la commande qui permet la modification de
la structure d’une table est définit comme suit :

ALTER TABLE nom_table


[ADD COLUMN définition_colonne]
[ADD CONSTRAINT définition_contrainte]
[MODIFY définition_colonne]
[DROP COLUMN nom_colonne]
[DROP CONSTRAINT nom_contrainte]
[ENABLE | DISABLE CONSTRAINT nom_contrainte]

1. Ajouter une colonne sexe Chaîne de 6 caractères dans la table élevés


………………………………………………………………………………………………
……………………………………………………………………………………………….
2. Supprimer la colonne NB_ELEV de la table CLASSES.
………………………………………………………………………………………………
……………………………………………………………………………………………….
3. Ajouter une contrainte à la colonne sexe pour que cette dernière prenne la valeur « oui » ou
« non »
………………………………………………………………………………………………
……………………………………………………………………………………………….

4. Supprimer la contrainte clé primaire de la table matières


………………………………………………………………………………………………
……………………………………………………………………………………………….
5. Désactiver la contrainte de la clé étrangère de la table ELEVES référencié à la table
CLASSES.
………………………………………………………………………………………………
……………………………………………………………………………………………….
6. Activer la contrainte déjà désactivé dans la question 5.
………………………………………………………………………………………………
……………………………………………………………………………………………….

5/5

Vous aimerez peut-être aussi