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
| CREATE PROCEDURE usp_etudiant_recherche
@_a varchar(32)
, @_b varchar(32)
, @_c varchar(32) = NULL
, @_d varchar(32) = NULL
AS
BEGIN
SET NOCOUNT ON
DECLARE @sql nvarchar(1024)
IF @_a IS NULL
BEGIN
RAISERROR('Le paramètre @_a doit être valué', 16, 1)
RETURN
END
IF @_b IS NULL
BEGIN
RAISERROR('Le paramètre @_b doit être valué', 16, 1)
RETURN
END
SET @sql = N'SELECT desColonnes FROM dbo.edutiant WHERE a = @_a AND b = @_b'
SELECT @sql = CASE WHEN @_c IS NOT NULL THEN ' AND c = @_c' ELSE '' END
SELECT @sql = CASE WHEN @_d IS NOT NULL THEN ' AND d = @_d' ELSE '' END
EXEC sp_executesql
@sql
, N'@_a varchar(32), @_b varchar(32), @_c varchar(32), @_d vachar(32)'
, @_a = @_a
, @_b = @_b
, @_c = @_c
, @_d = @_d
END |
Partager