powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
13 сообщений из 13, страница 1 из 1
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019376
Фотография XDefender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Покажите, пожалуйста,как можно передать таблицу в хранимую процедуру, как параметр ???!!

Как я понимаю, это достигается благодаря переменных типа TABLE...

в общем нужен пример (сам я не дотепал вчера вечеом... а работка стоит)
(
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019379
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
увы, это никак не достигается
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019380
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как альтернатива - временная локальная/глобальная таблица, которая должна существовать на момент вызова процедуры.
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019381
Фотография XDefender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
....... объясняю....
В тригере я таблицу Inserted копирую в другую, временную (только один параметр)
declare @table table (ID int)

Вот эту-то таблицу и нужно передать в хранимую!!!!
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019382
Фотография XDefender
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОБРАТИТЕ ВНИМАНИЕ, ЧТО ЭТО MS SQL 2000, а не 7.0

Я где-то видел такую фичу...
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019390
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
найдёте где видели - мне покажите
оч хочется посмотреть(хотя знаю что чудес не бывает)
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019403
MadDog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 X-Defender:
<Я где-то видел такую фичу...>
Может это был ВОЗВРАТ таблицы ИЗ функции?
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019428
Чумак А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно вернуть/передать курсор из/в хп в качестве параметра. Почитай в Books Online.
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019431
Чумак А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
--BOL Example
Use an OUTPUT cursor parameter
OUTPUT cursor parameters are used to pass a cursor that is local to a stored procedure back to the calling batch, stored procedure, or trigger.

First, create the procedure that declares and then opens a cursor on the titles table:

USE pubs

IF EXISTS (SELECT name FROM sysobjects

WHERE name = 'titles_cursor' and type = 'P')

DROP PROCEDURE titles_cursor

GO

CREATE PROCEDURE titles_cursor @titles_cursor CURSOR VARYING OUTPUT

AS

SET @titles_cursor = CURSOR

FORWARD_ONLY STATIC FOR

SELECT *

FROM titles



OPEN @titles_cursor

GO



Next, execute a batch that declares a local cursor variable, executes the procedure to assign the cursor to the local variable, and then fetches the rows from the cursor.

USE pubs

GO

DECLARE @MyCursor CURSOR

EXEC titles_cursor @titles_cursor = @MyCursor OUTPUT

WHILE (@@FETCH_STATUS = 0)

BEGIN

FETCH NEXT FROM @MyCursor

END

CLOSE @MyCursor

DEALLOCATE @MyCursor

GO
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019434
Фотография Александр Степанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Можно вернуть/передать курсор из/в хп в качестве параметра. Почитай в Books Online

Так там прямо и говорится, что "ИЗ" можно, а "В" - нельзя:

However, the cursor data type can be used only on OUTPUT parameters. When you specify a data type of cursor, the VARYING and OUTPUT keywords must also be specified.
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019437
MadDog
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Чумак:
а Ваш пример будет работать с таблицей inserted?
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019448
select * into #tmp from inserted
exec SomeProc

В унутрях SomeProc прекрасно используем таблицу #tmp
...
Рейтинг: 0 / 0
Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
    #32019481
Чумак А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Александр Степанов
Правда "В" нельзя. Погорячился.
2 MadDog
По поводу inserted - не знаю. Думаю и пробовать не стоить (потенциально глючный вариант).
Лучше скопировать inserted в "свою" времянку и на ней строить курсор или обрабатывать в хп как советует Глеб Уфимцев.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Покажите, как можно передать таблицу в хранимую процедуру, как параметр -SQL2000
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]