Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 непонятный косяк SSMS ?  [new]
gogasena
Guest
имеется в New Query окне следующее
--create proc myproc
--@filter varchar(1000)
--as

declare @filter varchar(1000)
set @filter='123'
--set @filter='333'
set @filter='123'

ошибка
Msg 137, Level 15, State 1, Line 2
Must declare the variable '@filter'.

если удалить первые 3 закоментированные строки, то все ок

в чем причина? баг?
22 окт 09, 14:52    [7824523]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

> в чем причина? баг?

сервер 2000-ый?

Posted via ActualForum NNTP Server 1.4

22 окт 09, 14:54    [7824534]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
gogasena
Guest
daw,
именно

Microsoft SQL Server 2000 - 8.00.2040 (Intel X86) May 13 2005 18:33:17 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 1)
22 окт 09, 14:55    [7824546]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

> сервер 2000-ый?

а, впрочем, и так ясно, что 2000-ый.
после комментария вместо нормального перевода строки стоит
одиночный символ возврата каретки (0Dh).
а парсер считает, что перевод строки - это 0A или 0D0A.

в 2005-ом поправлено.

Posted via ActualForum NNTP Server 1.4

22 окт 09, 14:56    [7824557]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
Ozerov
Member

Откуда: Москва
Сообщений: 3650
То что Вы привели сюда, выполняется на ура.
22 окт 09, 14:57    [7824559]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
gogasena
Guest
ну радует, что пофиксали.
а то и на это тоже ругается
declare @filter varchar(1000)
set @filter='123'
--первый коммент
declare @filter2 varchar(1000)
--второй коммент
set @filter='123'
set @filter2='123'
22 окт 09, 15:03    [7824602]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

> ну радует, что пофиксали.
> а то и на это тоже ругается

та же история, значит.
вот так продемонстрировать можно:
declare @var varchar(100)
set @var = '--asdf' + char(13) + 'print 1'
print @var
exec(@var)

2005-ый уже воспринимает CR как перевод строки.

Posted via ActualForum NNTP Server 1.4

22 окт 09, 15:06    [7824625]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

это еще что - тут явная ошибка выскочила.
гораздо веселее бывало с чем-нибудь типа:

select ...
-- комментарий
where ...

или вот с таким:

-- комментарий
if 1 = 0
begin
<тут что-то делаем>
end

Posted via ActualForum NNTP Server 1.4

22 окт 09, 15:10    [7824657]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
Ozerov
Member

Откуда: Москва
Сообщений: 3650
gogasena
ну радует, что пофиксали.
а то и на это тоже ругается
declare @filter varchar(1000)
set @filter='123'
--первый коммент
declare @filter2 varchar(1000)
--второй коммент
set @filter='123'
set @filter2='123'


И тут тоже на ура выполняется.
Привидите версию SSMS и проапдейтите сервер до билда 2187
22 окт 09, 15:14    [7824691]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
Konst_One
Member

Откуда:
Сообщений: 11514
/*делайте такие комментарии*/
22 окт 09, 15:16    [7824708]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
gogasena
Guest
Ozerov
gogasena
ну радует, что пофиксали.
а то и на это тоже ругается
declare @filter varchar(1000)
set @filter='123'
--первый коммент
declare @filter2 varchar(1000)
--второй коммент
set @filter='123'
set @filter2='123'


И тут тоже на ура выполняется.
Привидите версию SSMS и проапдейтите сервер до билда 2187

вложил файл. пробуйте.
(в 2005ом отработало нормально)

К сообщению приложен файл (SQLQuery1.sql - 59bytes) cкачать
22 окт 09, 15:21    [7824750]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381

> И тут тоже на ура выполняется.
> Привидите версию SSMS и проапдейтите сервер до билда 2187

я же привел пример. неужели, уже на 2187 не воспроизводится? ну, тогда гут.
а на ура, потому что, при опубликовании в форуме вместо одиноких CR нормальные
переводы строк вставляются.

Posted via ActualForum NNTP Server 1.4

22 окт 09, 15:23    [7824764]     Ответить | Цитировать Сообщить модератору
 Re: непонятный косяк SSMS ?  [new]
Ozerov
Member

Откуда: Москва
Сообщений: 3650
gogasena
Ozerov
gogasena
ну радует, что пофиксали.
а то и на это тоже ругается
declare @filter varchar(1000)
set @filter='123'
--первый коммент
declare @filter2 varchar(1000)
--второй коммент
set @filter='123'
set @filter2='123'


И тут тоже на ура выполняется.
Привидите версию SSMS и проапдейтите сервер до билда 2187

вложил файл. пробуйте.
(в 2005ом отработало нормально)


Хм, да, тут не отрабатывает, согласен. Если если самому сделать переход на строку, то ок.
22 окт 09, 15:30    [7824813]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить