Puis-je avoir des index créés sur des tables temporaires (#temp) qui sont créés dynamiquement dans une procédure stockée?

Je suis la création de tables temporaires (#temp_table) dans ma procédure stockée. C'est un énorme tableau avec des données de grande taille. Alors je suis entrain de créer un index dans la storeed procédure comme il est requis pour la requête plus rapide à la table temp. Mais quand j'exécute la procédure stockée, l'index n'est pas utilisé. L'index n'est pas créé lors de la procédure stockée est exécutée.

Pseudo-code

CREATE PROC abcdefg
AS
...
SELECT col_a, col_b, col_c....    
  INTO #temp_table
  FROM .....
  WHERE ....
...
CREATE INDEX abc_idx ON #temp_table (col_a)
...
SELECT col_a FROM #temp_table WITH (INDEX (abc_idx))
...
GO

Lorsque j'essaie d'exécuter la procédure stockée, c'est de ne pas reconnaître l'index. Comment puis-je résoudre ce problème?

C'est pour MS SQL?

OriginalL'auteur Nirmal Singh Raja Reegan | 2009-12-10