Wählen Sie nur einige Spalten von Verfahren und einfügen in Tabelle

Ich habe eine gespeicherte Prozedur zurückgibt, die 6 Spalten. Ich möchte aber nur 2 Spalten und legen Sie diese in meine Tabelle variable.

DECLARE @CategoryTable TABLE(   
CategoryId Int NOT NULL,   
Name nvarchar(255) NOT NULL   
)  

INSERT INTO @CategoryTable EXEC [GetAllTenantCategories] @TenantId  

Wenn ich dieses

Spaltenname oder Anzahl von gelieferten Werte nicht mit der Tabelle
definition

Wie fügt nur die angegebenen Spalten aus einer gespeicherten Prozedur?

Möchte ich nicht verwenden SELECT INTO da es wird nicht unterstützt, die von SQL Azure

Versucht unter und habe Invalid object name '#Temp'

DECLARE @CategoryTable TABLE(   
CategoryId Int NOT NULL,   
Name nvarchar(255) NOT NULL   
)  
INSERT INTO #Temp EXEC [GetAllTenantCategories] 1 

INSERT INTO @CategoryTable (CategoryId, Name) 
SELECT CategoryId, Name from #Temp

DROP TABLE #Temp
Sie haben entweder @CategoryTable oder GetAllTenantCategories
Ich änderte @CategoryTable mit allen 6 Spalten definiert. Ich bin noch immer Column name or number of supplied values does not match table definition
es ist mein Fehler, beim Innenausbau @CategoryTable ich habe eine Spalte mit IDENTITY(1,1) Angegeben 🙁

InformationsquelleAutor Billa | 2013-03-24

Schreibe einen Kommentar