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

Откуда:
Сообщений: 334
Можно фрагмент кода?
12 сен 13, 10:26    [14829615]     Ответить | Цитировать Сообщить модератору
 Re: Передача таблицы в хранимую процедуру в качестве параметра  [new]
Shakill
Member

Откуда: мск
Сообщений: 1882
BOL - Use Table-Valued Parameters
12 сен 13, 10:30    [14829648]     Ответить | Цитировать Сообщить модератору
 Re: Передача таблицы в хранимую процедуру в качестве параметра  [new]
Glory
Member

Откуда:
Сообщений: 104760
BOL - Table-Valued Parameters (Database Engine
The following example uses Transact-SQL and shows you how to create a table-valued parameter type, declare a variable to reference it, fill the parameter list, and then pass the values to a stored procedure.
....
12 сен 13, 10:33    [14829668]     Ответить | Цитировать Сообщить модератору
 Re: Передача таблицы в хранимую процедуру в качестве параметра  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4392
Кроме как для передачи данных вне транзакции, используя табличную переменную, не вижу никаких особенных причин для передачи таблицы в качестве параметра.
Поясните для чего?
12 сен 13, 13:13    [14830932]     Ответить | Цитировать Сообщить модератору
 Re: Передача таблицы в хранимую процедуру в качестве параметра  [new]
Мистер Хенки
Member

Откуда: канализация
Сообщений: 6615
SQL2008
Кроме как для передачи данных вне транзакции, используя табличную переменную, не вижу никаких особенных причин для передачи таблицы в качестве параметра.
Поясните для чего?

иногда хочется передать массив данных и без лишних телодвижений приступить к работе с ним.
12 сен 13, 13:29    [14831057]     Ответить | Цитировать Сообщить модератору
 Re: Передача таблицы в хранимую процедуру в качестве параметра  [new]
KVVK
Member

Откуда:
Сообщений: 36
=Сергей=
Можно фрагмент кода?


1) Создаем нужный тип User-Defined Table Types, например

CREATE TYPE [dbo].[MyTableType] AS TABLE(
[Id] [int] NOT NULL,
[Name] [nvarchar](250) NULL
)


2) Используем его в процедуре, например

CREATE PROCEDURE [dbo].[MyTableProcedure]
@MyTable MyTableType READONLY

AS
BEGIN
SET NOCOUNT ON;

INSERT INTO [MyTable]
SELECT * FROM @MyTable

END
12 сен 13, 16:39    [14832352]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить