Как указать текст в этом поиске stmt в sql - PullRequest
0 голосов
/ 17 марта 2020

Я должен искать с именем клиента NIXON'S. Но приведенный ниже оператор показывает ошибку ... Я передаю строковое значение из пользовательского интерфейса. Итак, какой правильный формат для передачи приведенного ниже параметра searchtext из пользовательского интерфейса? Пожалуйста, совет ....

    DECLARE @SearchText VARCHAR(MAX);
    SET @SearchText = 'NIXON'S';
    SELECT * FROM TBL_CUSTOMERS where StatusId = 1 AND CustomerName LIKE ''%' + 
    @SearchText+'%'';

Ответы [ 3 ]

0 голосов
/ 17 марта 2020

Попробуйте

 DECLARE @SearchText VARCHAR(MAX);
 SET @SearchText = 'NIXON''S';
 SELECT * FROM TBL_CUSTOMERS where StatusId = 1 AND CustomerName LIKE ''%' + 
    @SearchText+'%'';
0 голосов
/ 17 марта 2020
 DECLARE @SearchText VARCHAR(MAX);
 SET @SearchText = 'NIXON''s';
 PRINT @SearchText
 SELECT * FROM TBL_CUSTOMERS where StatusId = 1 AND CustomerName LIKE '%' 
 + @SearchText+'%';
0 голосов
/ 17 марта 2020

Вам нужно просто заменить 'with' 'внутри вашей строки, чтобы избежать специального символа

DECLARE @SearchText VARCHAR(MAX);
@SearchText = 'NIXON''S';
* FROM B where id = 1 AND record_date LIKE '%' + 
SearchText + '%';

Fiddle

...