Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Die Verwendung von SqlParameter in der SQL LIKE-Klausel funktioniert nicht

Was Sie wollen ist:

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

(oder bearbeiten Sie den Parameterwert so, dass er an erster Stelle das % enthält).

Andernfalls suchen Sie entweder (erstes Beispiel) nach dem Literal "@SEARCH" (nicht der Argumentwert), oder Sie betten einige zusätzliche Anführungszeichen in die Abfrage ein (zweites Beispiel).

In mancher Hinsicht könnte es einfacher sein, TSQL einfach LIKE @SEARCH verwenden zu lassen , und behandeln Sie es beim Aufrufer:

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

Beide Ansätze sollten funktionieren.