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 : Sélectionner tout - Visualiser dans une fenêtre à part
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