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

Откуда:
Сообщений: 1197
Почему при компилировании процедуры не проверяется наличие таблицы в БД (постоянной)?
30 июл 09, 17:03    [7480587]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36824
А почему должно?
30 июл 09, 17:04    [7480592]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
relief
Почему при компилировании процедуры не проверяется наличие таблицы в БД (постоянной)?

Потому что таблица эта может появиться на момент запуска процедуру.
30 июл 09, 17:07    [7480602]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
relief
Почему при компилировании процедуры не проверяется наличие таблицы в БД (постоянной)?


BOL->CREATE PROC->Deffered Name Resolution.

ЗЫ. При выполнении CREATE\ALTER процедура не компилируется.
30 июл 09, 17:10    [7480619]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
relief
Member

Откуда:
Сообщений: 1197
Гавриленко Сергей Алексеевич
А почему должно?


наличие столбцов ведь проверяет в таблице

2 Glory:

так пусть так и пишет, что нет объекта пока такого :)

2 pkarklin:
а что происходит при CREATE\ALTER процедура?
30 июл 09, 17:39    [7480881]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
relief

2 Glory:

так пусть так и пишет, что нет объекта пока такого :)


Ну так запустите процедуру и напишет
30 июл 09, 17:40    [7480889]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
relief
Member

Откуда:
Сообщений: 1197
Glory
relief

2 Glory:

так пусть так и пишет, что нет объекта пока такого :)


Ну так запустите процедуру и напишет


так в том то и дело, что не пишет мне ничего, что нет такой таблицы в БД а пишет при "CREATE PROCEDURE" - Command(s) completed successfully.
30 июл 09, 17:46    [7480948]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
relief
Glory
relief

2 Glory:

так пусть так и пишет, что нет объекта пока такого :)


Ну так запустите процедуру и напишет


так в том то и дело, что не пишет мне ничего, что нет такой таблицы в БД а пишет при "CREATE PROCEDURE" - Command(s) completed successfully.

Ну так CREATE PROCEDURE не умеет запускать процедуры на выполнение
30 июл 09, 17:47    [7480960]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
relief
Member

Откуда:
Сообщений: 1197
Glory
relief
Glory
relief

2 Glory:

так пусть так и пишет, что нет объекта пока такого :)


Ну так запустите процедуру и напишет


так в том то и дело, что не пишет мне ничего, что нет такой таблицы в БД а пишет при "CREATE PROCEDURE" - Command(s) completed successfully.

Ну так CREATE PROCEDURE не умеет запускать процедуры на выполнение


Вопрос: почему
SELECT sdf FROM [dbo].[Guests] 
выдает
Invalid column name 'sdf'.

а
SELECT sdf FROM [dbo].[Несуществующая таблица] 

пишет
Command(s) completed successfully
?
30 июл 09, 17:50    [7480991]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104760
Потому что так устроен MSSQL.
30 июл 09, 17:51    [7480997]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31219
relief
Почему при компилировании процедуры не проверяется наличие таблицы в БД (постоянной)?
Более старые версии сиквела проверяли, но потом по многочисленным просьбам пользователей эту проверку убрали.
30 июл 09, 17:54    [7481021]     Ответить | Цитировать Сообщить модератору
 Re: Почему в процедуре не проверяется наличие таблицы  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
relief
2 pkarklin:
а что происходит при CREATE\ALTER процедура?


Статью из BOL таки не хотим почитать?!
30 июл 09, 18:12    [7481161]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить