Procédure de mise à jour avec plusieurs tests
Bonjour,
Je dois effectuer une procédure de mise à jour de données en fonction de 4 paramètres qui seront remplis ou non.
Mon souci est que je pense utiliser une méthode loin d'être optimisé mais je ne trouve pas la solution.
Je passe 4 paramètres :
- nCo, nET et nAG qui permettent de sélectionner les enregistrements à mettre à jour
- nDa qui correspond à la date que je mettrai à jour.
Ma procédure
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| CREATE OR REPLACE PROCEDURE "MODIFIER_INSCRIPTION"
(
nCo in varchar2,
nDa in varchar2, -- sera toujours renseigné.
nET in varchar2,
nAG in varchar2
) IS
BEGIN
if(nAG is null) then
if(nCo is null) then
if(nET is null) then
-- Raise_application_error(-20000,'Critère de sélection absent');
else
update avec le test sur nET
end if;
else
if(nEt is null) then
update avec le test sur nCo
else
update avec le test sur nET et nCo
end if;
end if;
else
if(nCo is null) then
if(nET is null) then
update avec le test sur nAG
else
update avec le test sur nAG et nET
end if;
else
if(nEt is null) then
update avec le test sur nAG et nCo
else
update avec le test sur nAG, nET et nCo
end if;
end if;
end if; |
Je pense que je fais bien trop de if else end if.
Pouvez-vous m'indiquer l'instruction qui pourrait m'aider s'il vous plait?
Cordialement
Pinocchio