![Free-eBooks.net](/resources/img/logo-nfe.png)
![All New Design](/resources/img/allnew.png)
PL/SQL dispose de l’ensemble des types utilisables dans la définition des colonnes des tables.
Ce qui permet un format d’échange cohérent entre la base de données et les blocs PL/SQL.
Cependant, les étendues des valeurs possibles pour chacun de ces types peuvent être
différentes de celle du SQL. Il dispose également un certain nombre de types propres,
principalement pour gérer les données numériques. Enfin, PL/SQL permet de définir des types
complexes basés soit sur des structures issues des tables, soit sur des descriptions propres à
l’utilisateur.
Dans le bloc DECLARE :
Nom-de-variable [CONSTANT] type [[NOT NULL]] :=expression] ;
CONSTANT : La valeur de la variable n’est pas modifiable dans le code de la section BEGIN
NOT NULL : Empêche l’affectation d’une valeur NULL à la variable, la variable doit être
initialisée avec une valeur.
Expression : valeur initiale affectée à la variable dans le bloc.
112
Exemple : Liste de tous les employés dont le nom commence par une chaîne de caractères,
donnée (B).
DECLARE
vRech varchar(24) := ‘B%’;
BEGIN
SELECT noemp, prenom, nom, dept FROM Employes
WHERE nom like vRech;
END
Exemples : Renvoi du numéro d’employé le plus élevé.
DECLARE
vempId int;
BEGIN
SELECT vempId = max(noemp)FROM Employes;
END
Si l’instruction SELECT renvoie plusieurs lignes, la valeur affectée à la variable est celle
correspondant à la dernière ligne renvoyée.
DECLARE
vempId int;
BEGIN
SELECT vempId = noemp FROM Employés;
END
Les éléments de contrôle de structure