2010-06-18 3 views
0

J'ai un projet SSIS simple. Dans le flux de commande J'ai trois étapes:SSIS exécute des tâches individuelles correctes, pas ensemble

Step 1: Select Data from Db1.Table1

Step 2: Create Table2 in Db2

Step 3: Copy Data in Db1.Table1 to Db2.Table2

Si je « tâche d'exécution » un par un dans l'ordre, il exécute bien ... mais si j'essayer d'exécuter l'ensemble du projet, je reçois l'erreur suivante:

Error at Copy Data from Table1 to DB2 dbo Table2 Task [OLE DB Destination[40]]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E37.

An OLE DB record is available. Source: "Microsoft OLE DB Provider for SQL Server" Hresult: 0x80040E37 Description: "Invalid object name 'DB2.dbo.Table2".".

+1

Avez-vous ajouté des dépendances de flux de contrôle entre les étapes? Sinon, ils essaieront de fonctionner en parallèle. –

+0

Oui. Il existe des dépendances de flux de contrôle en place. – davemackey

Répondre

4

Le problème était avec la validation. Sur les tâches enfants par défaut, DelayValidation est désactivé. Puisque la deuxième étape crée une table qui est dans la troisième étape remplie avec les données tirées dans la première étape, il y a une erreur de validation. SSIS recherche la table et n'existe pas. En activant DelayValidation, il fonctionne correctement car il ne force pas les tables à exister avant l'exécution.

1

Votre flux de contrôle n'a aucun sens pour moi. Il n'y a aucune raison d'avoir un pas qui ne sélectionne que des records. Lorsque cela fonctionne comme un travail qui le verrait et si vous n'êtes pas en train de faire quelque chose avec eux, alors pourquoi choisir.

Si vous ne faites aucun nettoyage ou transformation, pourquoi utilisez-vous même SSIS? Un t-sql stament de Serait-il suffisant dans la table2 de table1? Bien sûr, c'est un problème si vous exécutez plus d'une fois, donc j'écrirais probablement un script pour créer la table si elle n'existe pas, tronquer c'est fait (je suppose que vous remplacez les données ici) et ensuite insérer dedans .

Questions connexes