Conception Et Réalisation (Oracle) by Grare Stéphane - HTML preview

PLEASE NOTE: This is an HTML preview only and some elements such as links or page numbers may be incorrect.
Download the book in PDF, ePub, Kindle for a complete version.

Les variables locales

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