Получить схему вывода выбора процесса - PullRequest
3 голосов
/ 01 апреля 2009

Я хотел бы поместить результаты сохраненного процесса в временную таблицу. Кажется, что временная таблица должна быть определена заранее, и INSERT INTO не будет работать.

Кто-нибудь знает, как получить схему набора записей, возвращаемую из оператора select?

sp_help получает информацию только о параметрах.

Ответы [ 3 ]

4 голосов
/ 01 апреля 2009

Вы должны быть в состоянии вставить в временную таблицу, не определяя схему с помощью OPENQUERY:

SELECT * INTO #TempTable
FROM OPENQUERY(ServerName, ‘EXEC DataBaseName.dbo.StoredProcedureName paramvalues1, paramvalues1′)

Где ServerName - это имя вашего экземпляра Sql Server. См. эту статью для получения дополнительной информации

0 голосов
/ 01 апреля 2009

Если вы можете, измените хранимую процедуру на пользовательскую функцию.

http://www.scottstonehouse.ca/blog/2007/03/stored-procedures-are-not-parameterized.html

0 голосов
/ 01 апреля 2009

Можете ли вы выполнить логическое содержимое, включая INSERT INTO, в окне запроса? Это должно создать временную таблицу, которую вы можете использовать в качестве модели.

В худшем случае вы строите схему вручную, один раз, что не должно быть обременительно, если вы пишете SP.

Для будущей документации мне все равно нравится создавать DDL вручную в SP. При отладке полезно иметь схему под рукой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...