2012-05-08 3 views
0

Vous devrez pardonner mon ignorance sur ceci - je suis généralement un genre de type de serveur!Extraire automatisé SSIS de serveur croisé avec les tables dynamiques

J'ai un serveur en direct et de reporting que nous appellerons LIVE et REP.

J'ai une série de tableaux sur LIVE, certaines données dont doit être PIVOT ted tous les soirs sur le serveur REP. Cela se produit déjà à travers un paquet SSIS - problème est - * le script d'extraction est corrigé mais J'ai besoin d'être dynamique.

ie. Je dois avoir une nouvelle table sur LIVE qui définit exactement ce qui est extrait à REP.

Cela signifie que je veux

  • DROP les tables extraites sur REP tous les soirs
  • créer les nouvelles tables sur REP tel que défini dans le tableau LIVE
  • de la LIVE Construire SQL dynamique SELECT tables dans les REP tables nouvellement créés

Je suis préoccupé parce que Je sais que SSIS peut être drôle sur les définitions de table etc etc.

Je ne demande pas sur la façon de construire le SQL dynamique - Je l'ai déjà fait partie, et il fonctionne bien entièrement LIVE - mais il faut être inter-serveur.

Est-ce que quelqu'un l'a déjà fait auparavant? Quelle est la meilleure pratique? Suis-je même autorisé à EXEC SQL dynamique dans un paquet SSIS, et cela peut-il être planifié?

+0

Quelle partie il n'est pas serveur croix? Si vous avez construit SQL dynamique, vous pouvez exécuter ce SQL en utilisant une connexion différente (via le gestionnaire de connexion). –

+0

Eh bien le SELECT que j'ai construit doit tirer de «LIVE» et peupler les tables dans «REP» ... –

Répondre

2

Cela pourrait vous donner quelques idées:

Créer flux de travail principal où vous construisez des tables de dépôt et créer dynamiquement la liste des tables en créant un jeu de résultats:

Main Workflow

Configuration d'une boucle qui itère chaque table de jeu de résultats:

For each loop setup 1

For each loop storing current table in variable

Ensuite, dans votre tâche de flux de données que vous pouvez lire une connexion/table et écrire à un autre:

Data flow task

+0

Merci pour ce Petar, il semble être d'une grande aide. Où se trouve ce processus, puis-je générer le SQL dynamique pour SELECT de chaque table? –

+0

C'est la deuxième tâche SQL - c'est ici que vous pouvez produire une liste de tables, par ex. select table_name from INFORMATION_SCHEMA.TABLES –

+0

Mais j'ai besoin de créer une instruction SELECT différente pour chacune des tables que j'ai créées sur 'REP'. Puis-je faire cela? –

Questions connexes