Możesz to zrobić tylko w sql, tak:
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)
....
Jeśli jakikolwiek parametr przekazany do procedury składowanej z NULL
wartość wtedy cały warunek zostanie zignorowany.
Pamiętaj, że :dodałem WHERE 1 = 1
aby zapytanie zadziałało w przypadku, gdy do zapytania nie przekazano żadnego parametru i w tym przypadku zostanie zwrócony cały zestaw wyników, ponieważ 1 = 1
jest zawsze prawdziwe.