Vectores o matrices en SQL Server




Si bien en SQL Server no hay vectores, hay una alternativa denominada parámetros de valores de tabla.
Básicamente es una variable que se comporta como tabla en SQL Server y que acepta insert, delete, update como una tabla normal, pero es una variable.

Para crearla, se define el tipo de dato:

CREATE TYPE Departamento AS TABLE
(
ID INT, Nombre VARCHAR(30)
);
GO

Estamos creando una variable llamada departamento que es una tabla con los campos ID y Nombre.

El resto es declarar la nueva variable creada:

DECLARE @miDepa AS Departamento

Y se puede insertar valores en esta variable:

INSERT INTO @miDepa VALUES
(1,'IT'),
(2,'Ventas'),
(3,'Finanzas')

O hacer un select:

SELECT * FROM @miDepa


Y ahora como llamo a esta variable en SQL Server?

El procedimiento almacenado recibe como entrada una variable del tipo tabla. El resto es llenar la tabla X.

CREATE PROCEDURE llenatabla
@table departamento READONLY
AS
INSERT INTO dbo.Departamento
SELECT ID,Nombre

FROM @table

Finalmente es simplemente pasar el parámetro al procedimiento almacenado.

EXEC dbo.llenatabla @miDepa


Sobre el autor

Daniel Calbimonte es un apasionado en la tecnología. Ha sido programador, project manager, documentador, ingeniero de software, experto en soporte técnico, YouTuber, escritor de artículos técnicos, blogger. Docente de tecnologías Microsoft, Developer de BI, DBA, conferencista. Actualmente da consultorías de software.

Whatsapp+59175502310

Imágenes

Bing Image Creator



Comentarios

Entradas populares de este blog

The Deep Sea: una web interactiva para explorar las profundidades el mar y descubrir las extrañas criaturas que viven en él

Detectar el usuario de Windows utilizando C#

Lo nuevo de SQL Server 2008 respecto a SQL Server 2005