TSQL sélectionnez dans la table temporaire de sql dynamique

Cela semble relativement simple, mais apparemment, il ne l'est pas.

J'ai besoin de créer une table temporaire fondées sur une table existante via le sélectionner dans la syntaxe:

SELECT * INTO #TEMPTABLE FROM EXISTING_TABLE

Le problème est, le nom de la table est accepté par l'intermédiaire d'un paramètre...

Je peux obtenir les données de la table via:

execute ('SELECT * FROM ' + @tableName)

mais comment marier les deux afin que je puisse mettre les résultats de l'exécuter directement dans la table temp.

Les colonnes de chaque table que cela va être utilisé pour les ne sont pas les mêmes, donc la construction de la table temporaire avant l'obtention de données n'est pas pratique.

Je suis ouvert à toutes suggestions, sauf à l'aide d'un mondial de la table temporaire.

Mise à jour:

C'est totalement ridicule, MAIS mes réserves mondiales de la table temporaire est que c'est un multi utilisateur de la plate-forme se prête à des questions si la table persisteront pendant de longues périodes de temps...

Sooo.. juste pour sortir de cette partie, j'ai commencé à l'aide de l'exécuter pour générer un mondial de la table temporaire.

execute('select * into ##globalDynamicFormTable from ' + @tsFormTable) 

Je puis utiliser cette table temp pour charger le local la table temporaire:

select * into #tempTable from ##globalDynamicFormTable

Je puis déposez la table globale.

drop table ##globalDynamicFormTable

c'est sale et je ne l'aime pas, mais pour le moment, jusqu'à ce qu'une meilleure solution, sa va avoir à travailler.

À la Fin:

Je suppose qu'il n'existe aucun moyen de la contourner.

La meilleure réponse semble être non plus;

Créer un vue dans l'exécution de la commande et de l'utiliser pour charger le local la table temporaire dans la procédure stockée.

Créer un mondial de la table temporaire dans l'exécution de la commande et de l'utiliser pour charger le local la table temporaire.

Avec cela dit, je vais probablement juste coller avec le mondial de la table temporaire parce que la création et suppression de points de vue est vérifié dans mon organisation, et je suis sûr qu'ils vont à la question que si elle commence à se produire tout le temps.

Merci!

  • Quelle version de SQL Server êtes-vous?
InformationsquelleAutor Patrick | 2012-03-02