2010-05-27 5 views
1

J'ai un fichier Excel. Je voulais tirer les données du fichier Excel vers la table SQL Server. Et les données sont transférées avec succès. Dans le fichier Excel, j'ai supprimé un texte d'une colonne nommée Risk d'une ligne. Le texte était long. Maintenant, l'exécution du paquet échoue à la source, c'est-à-dire à partir du fichier Excel. Les erreurs sont indiquées commeErreur lors de la récupération des données du fichier Excel

[Audit [1]] Error: There was an error with output column "Risk" (100) 
on output "Excel Source Output" (9). The column status returned was: 
"DBSTATUS_UNAVAILABLE". 

et

[Audit [1]] Error: SSIS Error Code 
DTS_E_INDUCEDTRANSFORMFAILUREONERROR. The "output column "Risk" 
(100)" failed because error code 0xC0209071 occurred, and the error 
row disposition on "output column "Risk" (100)" specifies failure on 
error. An error occurred on the specified object of the specified 
component. There may be error messages posted before this with more 
information about the failure. 

l'erreur se produit lorsque je retire ce texte particulier de cette ligne et quand j'effacer l'ensemble des données à l'exception des noms de colonnes et vous devrez entrer de nouvelles données. Et même si je remplace le fichier Excel par le même nom et les mêmes noms de colonne mais avec des données différentes.

+0

Quand vous dites "supprimé un texte", qu'as-tu fait exactement? avez-vous ouvert le fichier Excel manuellement et supprimé toute la colonne, avez-vous supprimé une seule cellule dans cette colonne, avez-vous remplacé la colonne par un espace? –

+0

J'ai supprimé une seule cellule dans cette colonne. et si la longueur de la cellule est inférieure à 256, la même erreur se produit. Et cela n'arrive qu'à cette cellule particulière seulement. –

+0

Ou quelle est la bonne méthode pour importer des données depuis un fichier Excel vers un serveur SQL? –

Répondre

0

Assurez-vous que le fichier Excel est fermé avant d'exécuter le package SSIS. De plus, essayez d'actualiser les métadonnées en ouvrant le package SSIS, en accédant à la section colonnes des éléments de flux de données source et destination. Il ne semble y avoir aucun autre problème ou vous l'avez décrit/observé de la mauvaise façon.

+0

l'erreur se produit lorsque vous remplacez le fichier Excel avec des données différentes mais le même nom de colonne à la première ligne ou en entrant de nouvelles données après avoir effacé les anciennes données à l'exception du nom de la colonne. ainsi l'extraction de données échoue. J'avais fait en actualisant les méta-données. l'erreur est résolue pour le moment. Mais une fois que vous le déployez sur le serveur, effectuez le processus ci-dessus. En cas d'échec, vous ne pouvez pas actualiser le package sur SQL Server. –

0

Je viens de me heurter à cela ... ne me souviens pas l'avoir vu auparavant dans 10+ ans d'utilisation de SSIS. Google-ing a trouvé une solution. Cliquez avec le bouton droit sur la connexion Excel >> Éditeur avancé >> Propriétés d'entrée et de sortie. Ouvrez les "colonnes de sortie" dans l'arborescence de sortie de la source Excel, et trouvez la colonne embêtante. Remplacez ErrorRowDisposition par RD_IgnoreFailure. Cela m'a amené à mi-chemin - je devais entrer et modifier la propriété DataType et la longueur après pour le faire fonctionner. Ensuite, j'ai remis ErrorRowDisposition à l'échec et l'ai exécuté uniquement avec le DataType modifié et la longueur, et il a couru.

Jouez avec ces options et voyez si vous pouvez le faire fonctionner; Je suppose que le changement de type de données l'a corrigé.

Questions connexes