Я работаю с отчетом RDL в Visual Studio 2010.Неверный синтаксис рядом?
Я пишу запрос и Refresh поле, то это приглашение "Определить параметр для запроса"
как этот
Параметр Имя | Параметр Значение
и я установить это значение
@proj | Параметры! Project.Value
затем нажмите кнопку OK
Я получаю эту ошибку
Некорректное синтаксис около '!'
Я не знаю, что такое «!» в моем запросе
Это пример мой запрос в RDL наборе
DECLARE @sqlCom NVARCHAR(MAX)
SET @sqlCom = '
SELECT name
FROM customer
WHERE id IN ('+ @proj +')
'
IF (LEN(@phoneNo) > 0)
BEGIN
SET @sqlCom = @sqlCom + ' AND phoneNo LIKE ''%'[email protected]+'%'' '
END
IF (LEN(@age) > 0)
BEGIN
SET @sqlCom = @sqlCom + ' AND age LIKE ''%'[email protected]+'%'' '
END
EXECUTE(@sqlCom)
Зв Только @sqlCom переменная SQL @proj, @phoneNo, @age является RDL Параметры
кто-нибудь поможет мне, как решить эту проблему
Спасибо.
Yikes ... это широко открыта для ввода в sql. Вы должны немедленно параметризовать свои запросы, если не раньше. Вы также должны взглянуть на эту статью, в которой объясняется ряд способов решения проблем производительности для этих типов запросов. http://sqlinthewild.co.za/index.php/2009/03/19/catch-all-queries/ –
Мое предположение: «Неправильный синтаксис рядом с«! »- это ссылка на! в «Параметры! project.Value». Попробуйте снова выполнить запрос с жестко закодированным параметром и посмотреть, что произойдет. – Bobby