Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Составной тип запроса с параметрами  [new]
pmb17
Member

Откуда:
Сообщений: 92
Добрый день.
При выполнении этого кода:

SET @TextString = 'SELECT ' + @ColumnName + ' FROM ' + @Table_Name + ' WHERE ' + @ColumnName + ' < @EmptyDate ORDER BY ' + @ColumnName;
EXEC (@TextString);

Получаю ошибку:

Необходимо объявить скалярную переменную "@EmptyDate".

Все переменные объявлены и инициализированы.Нужно чтобы содержимое переменной @EmptyDate попало не в текст запроса, а в само условие, т.е.

SELECT ColumnName FROM Table_Name WHERE ColumnName < @EmptyDate ORDER BY ColumnName;
18 июл 12, 16:15    [12884284]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
hoha_ftf
Member

Откуда: ЕКБ
Сообщений: 42
pmb17, вместо exec используйте sp_executesql
18 июл 12, 16:22    [12884328]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
user89
Member

Откуда:
Сообщений: 2083
pmb17,

https://www.sql.ru/faq/faq_topic.aspx?fid=104
18 июл 12, 16:25    [12884349]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
pmb17
Member

Откуда:
Сообщений: 92
hoha_ftf,

Не получается.

Вывел полученный тектс запроса, содержимое переменной @EmptyDate и результат команды
EXEC sp_executesql @TextString;

SELECT Changed FROM v8users WHERE Changed < @EmptyDate ORDER BY Changed

янв 1 1753 12:00AM

Сообщение 137, уровень 15, состояние 2, строка 1
Необходимо объявить скалярную переменную "@EmptyDate".
18 июл 12, 16:37    [12884442]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
hoha_ftf
Member

Откуда: ЕКБ
Сообщений: 42
pmb17,

С параметрами само собой. По ссылке выше или http://msdn.microsoft.com/ru-ru/library/ms188001.aspx
18 июл 12, 16:40    [12884472]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
iap
Member

Откуда: Москва
Сообщений: 47083
pmb17
hoha_ftf,

Не получается.

Вывел полученный тектс запроса, содержимое переменной @EmptyDate и результат команды
EXEC sp_executesql @TextString;

SELECT Changed FROM v8users WHERE Changed < @EmptyDate ORDER BY Changed

янв 1 1753 12:00AM

Сообщение 137, уровень 15, состояние 2, строка 1
Необходимо объявить скалярную переменную "@EmptyDate".
А где она объявлена?
Влом объявить, да?
И значение задать не мешало бы...
18 июл 12, 16:42    [12884481]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
pmb17
Member

Откуда:
Сообщений: 92
hoha_ftf
pmb17,

С параметрами само собой. По ссылке выше или http://msdn.microsoft.com/ru-ru/library/ms188001.aspx


Ок. спасибо.
18 июл 12, 16:49    [12884551]     Ответить | Цитировать Сообщить модератору
 Re: Составной тип запроса с параметрами  [new]
filthy_lie
Member

Откуда:
Сообщений: 2
pmb17,


SET @TextString = 'DECLARE @EmptyDate as varchar(max); SET @EmptyDate = ' + @EmptyDate +
' SELECT ' + @ColumnName + ' FROM ' + @Table_Name + ' WHERE ' + @ColumnName + ' < @EmptyDate ORDER BY ' + @ColumnName;
EXEC (@TextString);
18 июл 12, 16:50    [12884565]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить