Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL Server 2008 - Come si restituisce un tipo di tabella definito dall'utente da una funzione con valori di tabella?

Anche se non puoi restituire l'UDTT da una funzione, puoi restituire una variabile di tabella e riceverla in un UDTT purché lo schema corrisponda . Il codice seguente viene testato in SQL Server 2008 R2

-- Crea l'UDTT

CREATE TYPE dbo.MyCustomUDDT AS TABLE
(
    FieldOne varchar (512),
    FieldTwo varchar(1024)
)

-- Dichiara le tue variabili

DECLARE @uddt MyCustomUDDT;
DECLARE @Modifieduddt MyCustomUDDT;

// Chiama la funzione

INSERT INTO @Modifieduddt SELECT * FROM dbo.MyUDF(@uddt);

Firma della funzione

CREATE FUNCTION dbo.MyUDF(@localUDDT MyCustomUDDT)
RETURNS @tableVar TABLE
(
    FieldOne varchar (512),
    FieldTwo varchar(1024)
)
AS
BEGIN
 --Modify your variable here
RETURN
END

Speriamo che questo possa aiutare qualcuno.