L'un des moyens les plus simples d'y parvenir :
SELECT * FROM table
WHERE ((@status_id is null) or (status_id = @status_id))
and ((@date is null) or ([date] = @date))
and ((@other_parameter is null) or (other_parameter = @other_parameter))
etc. Ceci élimine complètement le sql dynamique et vous permet de rechercher sur un ou plusieurs champs. En éliminant SQL dynamique, vous supprimez un autre problème de sécurité concernant l'injection SQL.