Dans le cadre de cet exercice, vous allez utiliser un assistant pour créer une procédure mémorisée DB2 SQL. Cette procédure mémorisée simple renvoie des informations sur les employés provenant de la table EMP_EMPLOYEE_DIM, lorsque l'ID d'organisation de l'employé correspond à la valeur entrée par l'utilisateur.
Dans l'assistant, sélectionnez un canevas à utiliser comme base
de code dans la procédure mémorisée. Dans cet exercice, vous créez
le canevas à sélectionner dans l'assistant. Pour une procédure mémorisée simple
comme celle que vous créez dans cet exercice, vous utiliseriez habituellement
un des canevas de base. Cependant, vous créez un canevas dans cet exercice
pour vous familiariser avec le processus de création de
canevas.
Lorsque vous créez une routine dans le plan de travail, vous sauvegardez le code source dans l'espace de travail de votre projet.
Pour créer une procédure mémorisée SQL :
- Créez un canevas à partir d'un canevas existant.
- Cliquez sur . La fenêtre
Préférences s'ouvre.
- Développez puis cliquez sur Canevas.
- Sur la page Canevas, faites défiler vers le bas jusqu'à ce que vous voyiez
le premier canevas avec le contexte db2luw_sp_sql. Le Nom de ce canevas est "Personnalisé : vous fournissez le code SQL et obtenez un ensemble de résultats"
- Cliquez sur le canevas puis cliquez sur Editer. La fenêtre Edition du canevas s'ouvre.
- Remplacez le nom du canevas existant par le texte suivant : GSDB4tutorial : instruction SEARCH d'employé de base.
- Remplacez la description du canevas existante par le texte
suivant : Renvoie l'ID, le nom et l'organisation de tous les employés
dans la table EMP_EMPLOYEE_DIM.
- Dans le modèle, supprimez toutes les lignes de commentaires
délimitées par les deux lignes de commentaire de signes dièse (-- #################).
- Remplacez [Votre code SQL à exécuter] par
l'instruction SQL suivante :
SELECT EMPLOYEE_CODE, FIRST_NAME,
LAST_NAME, ORGANIZATION_CODE
FROM EMP_EMPLOYEE_DIM;
Le canevas terminé contient les informations suivantes :
- Cliquez sur OK dans la fenêtre Edition du canevas. Une boîte de message vous invite à indiquer si vous voulez créer un canevas
supplémentaire portant le nouveau nom ou renommer le canevas existant.
- Cliquez sur Oui pour créer un nouveau canevas. Votre canevas est ajouté à la liste de la page Canevas.
- Cliquez sur OK dans la fenêtre Préférences.
- Dans la vue Explorateur de projets de données, développez le projet SPDevelopment pour localiser le dossier Procédures mémorisées.
- Cliquez avec le bouton droit de la souris sur le dossier Procédures mémorisées puis sélectionnez . L'assistant Nouvelle procédure mémorisée s'ouvre.
- Dans la zone Nom, entrez SPEmployee.
- Dans la zone Langage, sélectionnez SQL.
- Sélectionnez le canevas GSDB4tutorial : instruction SEARCH d'employé de base,
puis cliquez sur Terminer. L'assistant se ferme et la procédure mémorisée s'ouvre également dans l'éditeur de routine, vous permettant de visualiser et d'éditer
le code source.
Pour le moment, si vous enregistriez
déployiez et exécutiez la procédure mémorisée, les résultats afficheraient
tous les employés de la table. Cependant, nous voulons limiter les résultats
aux seuls employés de l'organisation 018.
- Dans l'éditeur, procédez comme suit :
- Ajoutez le paramètre d'entrée org à la déclaration de procédure
pour que la déclaration soit comme suit :
CREATE PROCEDURE SPEmployee ( IN org CHAR(6) )
- Supprimez le point-virgule suivant EMP_EMPLOYEE_DIM.
- Insérez la clause de condition suivante :
WHERE ORGANIZATION_CODE = org;
La procédure mémorisée terminée contient le code suivant :
CREATE PROCEDURE SPEmployee ( IN org CHAR(6) )
DYNAMIC RESULT SETS 1
P1: BEGIN
-- Déclaration du curseur
DECLARE cursor1 CURSOR WITH RETURN for
SELECT EMPLOYEE_CODE, FIRST_NAME,
LAST_NAME, ORGANIZATION_CODE
FROM EMP_EMPLOYEE_DIM
WHERE ORGANIZATION_CODE = org;
-- Curseur resté ouvert pour l'application client
OPEN cursor1;
END P1
- Enregistrez la procédure mémorisée puis fermez l'éditeur de routine.
La procédure mémorisée, SPEmployee, s'affiche dans la vue Explorateur de projets de données,
dans le dossier Procédures mémorisées sous le projet dans lequel vous l'avez créée. La procédure mémorisée est prête à être déployée.