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

Откуда: Волжский
Сообщений: 235
Появилась необходимость проверить в хранимке не объявлена ли еще табличная переменная и ,если нет, объявить ее.
Как это можно сделать?
MS SQL server 2005
4 сен 09, 18:30    [7620328]     Ответить | Цитировать Сообщить модератору
 Re: Как проверить обявлена ли переменная?  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
Вы что, забыли - объявляли Вы ее или нет?
4 сен 09, 18:30    [7620333]     Ответить | Цитировать Сообщить модератору
 Re: Как проверить обявлена ли переменная?  [new]
Slider_spb
Member

Откуда:
Сообщений: 800
Компилятор выявит такие переменные на стадии компиляции и не даст сдклать такую хранимку. (если не использовать динамический SQL)
4 сен 09, 18:33    [7620346]     Ответить | Цитировать Сообщить модератору
 Re: Как проверить обявлена ли переменная?  [new]
Arsave
Member

Откуда: Волжский
Сообщений: 235
Паганель
Вы что, забыли - объявляли Вы ее или нет?

одна хранимка вызывает другую, и в той и в другой используется одна и та же табличная переменная (я же правильно понял, что если объявить переменную в первой хп, то вторая ее увидит?). Притом вторая хп может запускаться и сама по себе - вот в ней-то и нужно проверить есть ли уже такая табличка (переменная) или нет.
4 сен 09, 19:19    [7620460]     Ответить | Цитировать Сообщить модератору
 Re: Как проверить обявлена ли переменная?  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
Arsave
(я же правильно понял, что если объявить переменную в первой хп, то вторая ее увидит?)
Такие утверждения надо подкреплять цитатами из документации
4 сен 09, 19:24    [7620478]     Ответить | Цитировать Сообщить модератору
 Re: Как проверить обявлена ли переменная?  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
Arsave
Паганель
Вы что, забыли - объявляли Вы ее или нет?

одна хранимка вызывает другую, и в той и в другой используется одна и та же табличная переменная (я же правильно понял, что если объявить переменную в первой хп, то вторая ее увидит?). Притом вторая хп может запускаться и сама по себе - вот в ней-то и нужно проверить есть ли уже такая табличка (переменная) или нет.
Табличная переменная локальна внутри процедуры или функции.
Другая её ни за что не увидит.
Не путайте табличную переменную с временной таблицей!
4 сен 09, 19:24    [7620479]     Ответить | Цитировать Сообщить модератору
 Re: Как проверить обявлена ли переменная?  [new]
Arsave
Member

Откуда: Волжский
Сообщений: 235
Ваша правда, спасибо.
4 сен 09, 19:35    [7620521]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить