Partie II
Programmation procédurale
218
© Éditions Eyrolles
Conditions booléennes
Les tableaux suivants précisent le résultat d’opérateurs logiques qui mettent en jeu des variables booléennes pouvant prendre trois valeurs (TRUE, FALSE, NULL). Bien sûr, en l’absence
d’un vrai type booléen, MySQL représente TRUE avec 1, et FALSE avec 0. Il est à noter que la
négation de NULL (NOT NULL) renvoie une valeur nulle.
Structure CASE
Comme l’instruction IF, la structure CASE permet d’exécuter une séquence d’instructions en
fonction de différentes conditions. La structure CASE est utile lorsqu’il faut évaluer une même
expression et proposer plusieurs traitements pour diverses conditions.
Tableau 6-10 Structures IF
IF-THEN
IF-THEN-ELSE
IF-THEN-ELSEIF
IF condition THEN
instructions;
END IF;
IF condition THEN
instructions;
ELSE
instructions;
END IF;
IF condition1 THEN
instructions;
ELSEIF condition2 THEN
instructions2;
ELSE
instructions3;
END IF;
BEGIN
DECLARE v_telephone CHAR(14)
DEFAULT '06-76-85-14-89';
SELECT "C'est un portable";
ELSE
SELECT "C'est un fixe...";
END IF;
END;
IF SUBSTR(v_telephone,1,2)='06' THEN
Tableau 6-11 Opérateur AND
AND
TRUE
FALSE
NULL
TRUE
TRUE
FALSE
NULL
FALSE
FALSE
FALSE
FALSE
NULL
NULL
FALSE
NULL
Tableau 6-12 Opérateur OR
OR
TRUE
FALSE
NULL
TRUE
TRUE
TRUE
TRUE
FALSE
TRUE
FALSE
NULL
NULL
TRUE
NULL
NULL
Programmation procédurale
218
© Éditions Eyrolles
Conditions booléennes
Les tableaux suivants précisent le résultat d’opérateurs logiques qui mettent en jeu des variables booléennes pouvant prendre trois valeurs (TRUE, FALSE, NULL). Bien sûr, en l’absence
d’un vrai type booléen, MySQL représente TRUE avec 1, et FALSE avec 0. Il est à noter que la
négation de NULL (NOT NULL) renvoie une valeur nulle.
Structure CASE
Comme l’instruction IF, la structure CASE permet d’exécuter une séquence d’instructions en
fonction de différentes conditions. La structure CASE est utile lorsqu’il faut évaluer une même
expression et proposer plusieurs traitements pour diverses conditions.
Tableau 6-10 Structures IF
IF-THEN
IF-THEN-ELSE
IF-THEN-ELSEIF
IF condition THEN
instructions;
END IF;
IF condition THEN
instructions;
ELSE
instructions;
END IF;
IF condition1 THEN
instructions;
ELSEIF condition2 THEN
instructions2;
ELSE
instructions3;
END IF;
BEGIN
DECLARE v_telephone CHAR(14)
DEFAULT '06-76-85-14-89';
SELECT "C'est un portable";
ELSE
SELECT "C'est un fixe...";
END IF;
END;
IF SUBSTR(v_telephone,1,2)='06' THEN
Tableau 6-11 Opérateur AND
AND
TRUE
FALSE
NULL
TRUE
TRUE
FALSE
NULL
FALSE
FALSE
FALSE
FALSE
NULL
NULL
FALSE
NULL
Tableau 6-12 Opérateur OR
OR
TRUE
FALSE
NULL
TRUE
TRUE
TRUE
TRUE
FALSE
TRUE
FALSE
NULL
NULL
TRUE
NULL
NULL
