U moet een aantal dingen doen om dit op gang te krijgen, aangezien uw parameter meerdere waarden krijgt, moet u een tabeltype maken en ervoor zorgen dat uw winkelprocedure een parameter van dat type accepteert.
Aangezien u een TABLE
doorgeeft, als parameter moet je een TABLE TYPE maken, iets als volgt
TABELTYPE
CREATE TYPE dbo.Prco_Table AS TABLE
(
[Val1] Data Type
[Val2] Data Type
)
GO
Opgeslagen procedure om die typeparameter te accepteren
CREATE PROCEDURE mainValues
@TableParam Prco_Table READONLY --<-- Accepts a parameter of that type
AS -- Note it is ReadOnly
BEGIN
SET NOCOUNT ON;
/* do your insert from this parameter or other cool stuff */
INSERT INTO Target_Table (Col1, Col2)
SELECT [Val1] , [Val2]
FROM @TableParam --<-- Table Type variable
END
PROC UITVOEREN
Declareer een variabele van dat type en vul deze met uw waarden.
DECLARE @Table ClaimData( --<-- Declare a variable of your type
[Val1] Data Type
[Val2] Data Type
);
-- Populate the variable
INSERT INTO @Table ([Val1],[Val2])
SELECT testdesc, testoption
FROM tableA
WHERE testoption = 1
EXECUTE mainValues @Table --<-- Pass this variable of Table Type