Je voudrais vous demander votre avis quant à l'implémentation d'un formulaire de recherche filtré. Imaginons le cas suivant:
- 1 grande table avec beaucoup de colonnes
- Il pourrait être important de dire que ce serveur SQL
Vous devez implémenter un formulaire pour rechercher des données dans ce tableau, et dans ce formulaire, vous aurez plusieurs cases à cocher qui vous permettront de personnaliser cette recherche.
Maintenant, ma question ici est laquelle parmi les suivantes devrait être la meilleure façon de mettre en œuvre la recherche?
Créez une procédure stockée avec une requête à l'intérieur. Cette procédure stockée vérifiera si les paramètres sont donnés par l'application et dans le cas où ils ne sont pas donnés, un caractère générique sera mis dans la requête.
Créez une requête dynamique, qui est construite en fonction de ce qui est donné par l'application.
Je pose cette question parce que je sais que SQL Server crée un plan d'exécution lorsque la procédure stockée est créée, afin d'optimiser ses performances, mais en créant une requête dynamique à l'intérieur de la procédure stockée, sacrifierons-nous l'optimisation obtenue par le plan d'exécution?
Veuillez me dire quelle serait la meilleure approche à votre avis.