Si se tienen que insertar más de una fila dentro de una tabla, usualmente se ejecuta el insert o procedimiento almacenado tantas veces como filas tenga, con los table valued parameters se pueden enviar múltiples filas de datos dentro un mismo TSQL sin necesidad de crear tablas temporales o haciendo múltiples llamadas.

 

Los Table Valued-Parameters son nuevos en SQL 2008

 

Primero tienes que crear el tipo que se va insertar

 

CREATE TYPE tipo_linea (consecutivo INT, _id INT, producto INT, cantidad INT);

 

Después se crea un procedimiento almacenado que recibe como parámetro ese tipo

 

CREATE PROC InsertarIventario (@_id INT, @datos_por_insertar tipo_linea)
AS

INSERT INTO tablainventario VALUES (@_id … ) ;
INSERT INTO detalleinventario
  SELECT * FROM @datos_por_insertar;

 

Slds

Eduardo Castro Comunidad Windows http://mswindowscr.org

 

Technorati Tags: