2010-09-22 6 views
0

J'utilise SQL Server 2005 SSIS et nous utilisons la tâche de flux de données pour déplacer des données d'une table à une autre. Cela fonctionne bien. Maintenant, nous avons une autre obligation de mettre à jour les données de la même table en utilisant cette approche.Comment faire une tâche de flux de données de/vers la même table?

Est-ce possible d'utiliser la même approche pour la façon suivante:

  1. Nous avons un ensemble de données du tableau A en fonction de requête complexe
  2. Nous mettons à jour à la table A

Le La requête normale UPDATE INTO n'est pas une option car il faut un certain temps pour la traiter et nous ne pouvons pas voir le mouvement des données comme nous l'avons fait pour la tâche de flux de données.

Une indication ou quelque chose qui va être bon.

Merci

Répondre

0

soit:

  • écrire à une table Temporaire de et faire la mise à jour en une seule tâche SQL après vous avez traité tout
  • le décomposer en petits morceaux en fonction de variables SSIS OFFSET et utiliser une boucle FOR/FOREACH
+0

Pouvez-vous nous en parler un peu plus? – dcpartners

0

Lire les données avec une source de données dans une tâche de flux de données et utiliser la commande ole db dans le flux de données pour mettre à jour e les données dans le même tableau. S'il n'y a pas de verrouillage lors de la lecture et uniquement du verrouillage au niveau des lignes lors de la mise à jour, cela devrait fonctionner