je voudrais savoir ce qui est le plus rapide et le plus correct entre ces 2 procédures stockées (qui font la même chose) :
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
/* GET THE SPECIFICATIONS OF AN AREA INCLUDED IN A LAYER COMPARTMENTAL SECTION */
CREATE PROCEDURE SP_GET_COMPARTMENTAL_SECTION_AREA_COORDINATES
@AR_ID int
AS 
BEGIN
	SELECT PE_WIDTH, PE_PATTERN, PE_COLOR, BR_PATTERN, BR_FORECOLOR, BR_BACKCOLOR
	FROM T_PE_PEN, T_BR_BRUSH
	WHERE PE_ID = (SELECT AR_PE_ID
				      FROM T_AR_AREA INNER JOIN T_PE_PEN ON AR_PE_ID = PE_ID
				      WHERE AR_ID=@AR_ID)
	  AND BR_ID = (SELECT AR_BR_ID
				      FROM T_AR_AREA INNER JOIN T_BR_BRUSH ON AR_BR_ID = BR_ID 
				      WHERE AR_ID=@AR_ID)
END
GO
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
/* GET THE SPECIFICATIONS OF AN AREA INCLUDED IN A LAYER COMPARTMENTAL SECTION */
CREATE PROCEDURE SP_GET_COMPARTMENTAL_SECTION_AREA_COORDINATES
@AR_ID int
AS 
BEGIN
	DECLARE @pe_id int ,
			@br_id int ,
	SET @pe_id=(SELECT AR_PE_ID
				   FROM T_AR_AREA INNER JOIN T_PE_PEN ON AR_PE_ID = PE_ID
				   WHERE AR_ID=@AR_ID)
	SET @br_id=(SELECT AR_BR_ID
				   FROM T_AR_AREA INNER JOIN T_BR_BRUSH ON AR_BR_ID = BR_ID 
				   WHERE AR_ID=@AR_ID)
 
	SELECT PE_WIDTH, PE_PATTERN, PE_COLOR, BR_PATTERN, BR_FORECOLOR, BR_BACKCOLOR
	FROM T_PE_PEN, T_BR_BRUSH
	WHERE PE_ID = @pe_id AND BR_ID = @br_id
END
GO
d'avance