Můžete to udělat pouze v SQL, takto:
SELECT *
FROM tUsers
WHERE 1 = 1
AND (@userID IS NULL OR RTRIM(Name) = @userID )
AND (@password IS NULL OR RTRIM(Password) = @password)
AND (@field2 IS NULL OR Field2 = @field2)
....
Pokud je některý parametr předán uložené proceduře s NULL
hodnota, pak bude celá podmínka ignorována.
Všimněte si, že :Přidal jsem WHERE 1 = 1
aby dotaz fungoval i v případě, že dotazu nebude předán žádný parametr a v tomto případě bude vrácena celá sada výsledků, protože 1 = 1
je vždy pravda.