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

Откуда:
Сообщений: 5
Надо вернуть таблицу из хранимой процедуры. Но не простую)
а такую, в которой мне неизвестно заранее, сколько будет столбцов

Внутри процедуры я по мере надобности добавляют при помощи ALTER TABLE новые столбцы, сколько их будет в итоге - не знаю. Подскажите, как это дело возвращать и как вызывать?
15 июн 11, 01:06    [10813684]     Ответить | Цитировать Сообщить модератору
 Re: Вернуть таблицу из хранимой процедуры  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31994
Merlin72
Надо вернуть таблицу из хранимой процедуры. Но не простую)
а такую, в которой мне неизвестно заранее, сколько будет столбцов

Внутри процедуры я по мере надобности добавляют при помощи ALTER TABLE новые столбцы, сколько их будет в итоге - не знаю. Подскажите, как это дело возвращать и как вызывать?
Из из хранимой процедуры нельзя вернуть таблицу, вернуть можно только результат запроса.

Столбцы для этого знать не надо.

select * from ...
15 июн 11, 01:08    [10813685]     Ответить | Цитировать Сообщить модератору
 Re: Вернуть таблицу из хранимой процедуры  [new]
Уленшпигель
Member

Откуда:
Сообщений: 115
а зачем возвращать таблицу из хранимой процедуры? можно вызвать процедуру, она чего-то там сделает, а потом сделать селект из таблицы
15 июн 11, 09:24    [10814006]     Ответить | Цитировать Сообщить модератору
 Re: Вернуть таблицу из хранимой процедуры  [new]
Merlin72
Member

Откуда:
Сообщений: 5
автор
а зачем возвращать таблицу из хранимой процедуры? можно вызвать процедуру, она чего-то там сделает, а потом сделать селект из таблицы
Именно это я и подразумеваю под "вернуть". Может не совсем точная терминология, но результат тот же.

У меня вот какая проблема: если я формирую таблицу до вызова процедуры, то у меня не получается ее в процедуру передать, а если формирую в самой процедуре, то извне она недоступна.
15 июн 11, 14:21    [10816117]     Ответить | Цитировать Сообщить модератору
 Re: Вернуть таблицу из хранимой процедуры  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Merlin72
если я формирую таблицу до вызова процедуры
Какой командой вы ее формируете?
15 июн 11, 14:30    [10816199]     Ответить | Цитировать Сообщить модератору
 Re: Вернуть таблицу из хранимой процедуры  [new]
Ivan Durak
Member

Откуда: Minsk!!!
Сообщений: 3757
Merlin72
автор
а зачем возвращать таблицу из хранимой процедуры? можно вызвать процедуру, она чего-то там сделает, а потом сделать селект из таблицы
Именно это я и подразумеваю под "вернуть". Может не совсем точная терминология, но результат тот же.

У меня вот какая проблема: если я формирую таблицу до вызова процедуры, то у меня не получается ее в процедуру передать, а если формирую в самой процедуре, то извне она недоступна.

используйте глобальную временную таблицу - ## префикс. Ну или вообще не временную.
15 июн 11, 14:45    [10816304]     Ответить | Цитировать Сообщить модератору
 Re: Вернуть таблицу из хранимой процедуры  [new]
Merlin72
Member

Откуда:
Сообщений: 5
Ivan Durak,

Глобальная временная таблица помогла. И хоть не люблю я глобальные вещи использовать, это как раз тот случай когда они к месту
16 июн 11, 01:01    [10819231]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить