SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE bm_GetClients @CompanyKey INT = NULL, @ClientKey INT = NULL AS BEGIN SELECT * FROM bm_Clients WHERE (CompanyKey = @CompanyKey OR @CompanyKey IS NULL) AND (ClientKey = @ClientKey OR @ClientKey IS NULL) ENDIf I call it with:
DECLARE @CompanyKey INT DECLARE @ClientKey INT SET @CompanyKey = 2 SET @ClientKey = 5 EXEC bm_GetClients @CompanyKey = @CompanyKey, @ClientKey = @ClientKeyThen it works ok.
>>>SELECT * >>> FROM bm_Clients >>> WHERE (CompanyKey = @CompanyKey OR @CompanyKey IS NULL) >>> AND >>> (ClientKey = @ClientKey OR @ClientKey IS NULL) >>>>>>>This stored proc takes 2 optional params.
>>>>Everything makes sense in someone's mind
public class SystemCrasher :ICrashable
In addition, an integer field is not for irrational people