Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

L'utilisation de SqlParameter dans la clause SQL LIKE ne fonctionne pas

Ce que vous voulez, c'est :

tblCustomerInfo.Info LIKE '%' + @SEARCH + '%'

(ou modifiez la valeur du paramètre pour inclure le % en premier lieu).

Sinon, vous êtes soit (premier échantillon) à la recherche du littéral "@SEARCH" (pas la valeur arg), ou vous intégrez des guillemets supplémentaires dans la requête (deuxième échantillon).

À certains égards, il pourrait être plus facile de faire en sorte que le TSQL utilise simplement LIKE @SEARCH , et le traiter au niveau de l'appelant :

command.Parameters.AddWithValue("@SEARCH","%" + searchString + "%");

L'une ou l'autre approche devrait fonctionner.