Duplication possible: Comment SELECT * INTO [table temp] FROM [Procédure stockée]
Je suis nouveau à T-SQL . J'ai une procédure stockée qui sélectionne les loggings. Je veux interroger les loggings renvoyés par la procédure stockée, donc j'essaie d'insert les loggings dans une table temporaire. (Stack Overflow messages et d'autres messages disent que c'est comment le faire.)
Mais quand j'essaye, j'obtiens l'erreur:
le nom de l'object ou de la colonne est manquant ou vide
Quand je viens d'exécuter la procédure stockée, j'obtiens une table qui a des colonnes avec des noms.
select * into #temp1 exec alexander.dbo.get_uberrecords '20120101', '20120201', 'labcorp' //throws error saying columns must have names
mais
exec alexander.dbo.get_uberrecords '20120101', '20120201', 'labcorp' // Returns cols with names
Qu'est-ce que je rate?
Essayez d'abord de créer la table temporaire:
CREATE TABLE #temp1 ( COL1 INT, COL2 VARCHAR(MAX) ) INSERT INTO #temp1 exec alexander.dbo.get_uberrecords '20120101', '20120201', 'labcorp'
Dans le cas d'un set de résultats extrêmement large, vous pouvez utiliser OPENROWSET
Dans tous les cas, ce SO a plusieurs options: Insérer les résultats d'une procédure stockée dans une table temporaire