> Tech > IBMi, Faire une mise à  jour de masse

IBMi, Faire une mise à  jour de masse

Tech - Par Renaud ROSSET - Publié le 25 novembre 2011
email

Voyons un exemple de mise à jour de masse de la colonne BONUS employee dans la table Employee_Pay via une mise à jour de la vue EMPLOYEE. L’instruction UPDATE se présente ainsi :

UPDATE EMPLOYEE SET BONUS = SALARY * .03;COMMIT;

La requête suivante vérifie les résultats de la mise à jour. La colonne BONUS_PCT dérivée vérifie que la quantité bonus est de 3 % du montant du salaire.

SELECT EMPNO, SALARY, BONUS,

DECIMAL(BONUS/SALARY,3,2) AS BONUS_PCT

FROM EMPLOYEE

FETCH FIRST 5 ROWS ONLY;

La figure 13 montre les résultats de cette requête.

Les déclencheurs INSTEAD OF ont beaucoup d’autres usages intéressants pour ACME. Ainsi, vous pouvez utiliser un déclencheur INSTEAD OF au lieu de mettre à jour des status flags utilisés pour l’archivage et la purge.

En essence, vous pouvez transformer une instruction DELETE employee en une instruction INSERT INTO EMPLOYEE_ARCHIVE and DELETE EMPLOYEE_PAY. L’enregistrement de l’employé n’apparaîtra plus dans la vue EMPLOYEE parce que l’enregistrement n’existe plus. En étalant les mises à jour et les suppressions durant la journée d’activité, on se dispense des longs jobs batch de purge ou d’archivage.

Téléchargez cette ressource

SMART DSI – N°36

SMART DSI – N°36

La Revue SMART DSI, analyses et dossiers pour tous les acteurs de la transformation numérique de l'entreprise, met sa nouvelle édition en accès sur demande, gagnez en compétences et expertise IT Professionnelle, découvrez les dossiers experts.

Tech - Par Renaud ROSSET - Publié le 25 novembre 2011

A lire aussi sur le site

Revue Smart DSI

La Revue du Décideur IT