SQL Server 2008 - Wie kann ich einen benutzerdefinierten Tabellentyp von einer Tabellenwertfunktion zurückgeben?

Hier ist mein benutzerdefinierter Tabellentyp ...

CREATE TYPE [dbo].[FooType] AS TABLE(
 [Bar] [INT],
)

Dies ist, was ich in meiner Tabellenwertfunktion tun musste, um den Typ zurückzugeben:

CREATE FUNCTION [dbo].[GetFoos]
RETURN @FooTypes TABLE ([Bar] [INT])
INSERT INTO @FooTypes (1)
RETURN

rundsätzlich muss ich meine Typdefinition in der RETURN-Anweisung der Funktion neu deklarieren. Gibt es keine Möglichkeit, den Typ einfach in der RETURN-Anweisung zu deklarieren?

Ich hätte gedacht, das würde funktionieren:

CREATE FUNCTION [dbo].[GetFoos]
RETURN @FooTypes [FooType]
INSERT INTO @FooTypes (1)
RETURN

Kann keine Hilfe zu MSDN / Google zu diesem Thema finden?

BEARBEITE

Ich habe die Markierung meiner Antwort aufgehoben und stoße auf diese Frage, da ich 6 Monate später auf dasselbe Szenario stoße.

Hat jemand eine Idee, ob es möglich ist, einen benutzerdefinierten Tabellentyp von einer Tabellenwertfunktion zurückzugeben? Wenn nicht, gibt es eine bessere Problemumgehung als das, was ich getan habe? (Deklarieren Sie den Typ erneut.)

Antworten auf die Frage(10)

Ihre Antwort auf die Frage