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

Откуда: Украина
Сообщений: 111
Здравствуйте.

Это только у меня SSDT в VS 2013 Database Project не выдает ошибки?
CREATE PROCEDURE [dbo].[Procedure1]
AS
	GOTO A


Т.к. тот же код, но в SSMS выдает ошибку:
Msg 133, Level 15, State 1, Procedure Procedure1, Line 8
A GOTO statement references the label 'A' but the label has not been declared.


Проверял на:
Microsoft Visual Studio Premium 2013
Version 12.0.40629.00 Update 5
SQL Server Data Tools 12.0.50730.0
Microsoft SQL Server Data Tools

С уважением,
Павел Фурсов
11 авг 15, 15:00    [18003683]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Maxx_UA
Guest
2008 R2, 2014 из SSMS - ругаются одинаково

Msg 133, Level 15, State 1, Procedure Procedure1, Line 4
A GOTO statement references the label 'A' but the label has not been declared.
11 авг 15, 15:20    [18003810]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Павел Фурсов
Member

Откуда: Украина
Сообщений: 111
Maxx_UA,

В данном случае в VS компиляция проходит успешно (Build succeeded), а валится с ошибкой на публикации.
В SSMS IntelliSense ошибку не показывает, а Parse и Execute выдают ошибку правильно.

С уважением,
Павел Фурсов
11 авг 15, 15:34    [18003904]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Maxx_UA
Guest
Павел Фурсов,

VS лайно
11 авг 15, 15:40    [18003939]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Павел Фурсов
Member

Откуда: Украина
Сообщений: 111
Maxx_UA,

Не так все однозначно.
Это мой основной инструмент для проектирования.
И в целом он меня устраивает.

С уважением,
Павел Фурсов
11 авг 15, 15:51    [18004006]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
0-0
Guest
Павел Фурсов,

у меня проект VS 2012 и на базах 2008.
Все goto при компиляции и публикации воспринимаются нормально.

Может быть у вас действительно синтаксическая ошибка в процедуре?
11 авг 15, 16:15    [18004103]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Павел Фурсов
Member

Откуда: Украина
Сообщений: 111
0-0
Все goto при компиляции и публикации воспринимаются нормально.

Может быть у вас действительно синтаксическая ошибка в процедуре?

Я ожидал от VS получить ошибку на этапе редактирования или компиляции. Но этого не происходит.
В тексте процедуры была специально сделана ошибка, которая не была выявлена компилятором.

С уважением,
Павел Фурсов
11 авг 15, 17:21    [18004520]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8807
Павел Фурсов,

каким компилятором? Вы думаете, что VS проект помещает на сервер откомпилированный, если его так можно назвать, код?
11 авг 15, 17:43    [18004675]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Павел Фурсов
Member

Откуда: Украина
Сообщений: 111
Еще пример.

CREATE PROCEDURE [dbo].[Procedure2]
AS
	declare	@t table (Id int not null)

	select
		a.b
	from	@t t


VS - ошибки не видит. А хотелось бы, чтобы видела.

SSMS
Editor - подсвечивает красным a.b
Parse - OK
Execute - Error

Msg 4104, Level 16, State 1, Procedure Procedure2, Line 6
The multi-part identifier "a.b" could not be bound.


С уважением,
Павел Фурсов
11 авг 15, 17:53    [18004719]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Павел Фурсов
Member

Откуда: Украина
Сообщений: 111
Владислав Колосов
каким компилятором?


Тем, что создает dacpac-файл.
Если Build не проходит, то и файла не будет. И публикацию не даст сделать.

С уважением,
Павел Фурсов
11 авг 15, 17:56    [18004736]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8807
Для этого надо интеллисенс и анализатор метаданных от SSIS встроить в VS + синтаксический анализатор компилятора сервера...
11 авг 15, 18:33    [18004921]     Ответить | Цитировать Сообщить модератору
 Re: SSDT и GOTO  [new]
Критик
Member

Откуда: Москва / Калуга
Сообщений: 35381
Блог
Владислав Колосов,

встроен же,
называется локальный инстанс, запускается, когда работает студия с DB-проектом
12 авг 15, 07:44    [18006327]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить