Я столкнулся с очень странным поведением, как поиск в sp_executesql:Как поиск в execute_sql не работает должным образом - SQL Server
Это утверждение возвращает 0 строк:
exec sp_executesql N'SELECT * FROM MyTable WHERE Name LIKE ''%'' +
@Name + ''%''',N'@Name nvarchar(7)',@Name=N'100024'
Когда это эквивалентны возвраты нужный ряд:
DECLARE @Name nvarchar(7)=N'100024'
SELECT * FROM MyTable WHERE Name LIKE '%' + @Name + '%'
Что случилось с командой exec sp_executesql? если я использую его для поиска в другой строке, такой как «100033», он находит строку, поэтому синтаксис должен быть точным (на самом деле запрос был взят из SQL Profiler при попытке отладки, почему моя страница asp.net не нашла этот конкретный элемент)
Хорошая работа, хороший экземпляр! –
Я думал то же самое о вас - спасибо! :) –
Да, не нужно спорить, этот вопрос должен быть закрыт в любом случае как простая опечатка. –