Prenons le scénario suivant :
- Vous créez un package SQL Server 2005 Integration Services (SSIS) dans Business Intelligence Development Studio (BIDS).
- Vous utilisez une source de fichier plat pour lire les données d’un fichier texte dans une tâche de flux de données.
- Vous utilisez un délimiteur de colonne à plusieurs caractères dans la source de fichier plat. Par exemple, le délimiteur de colonne à plusieurs caractères est une chaîne de caractères de trois caractères tilde (~~~).
- Le fichier texte contient une grande quantité de données. Par exemple, le fichier texte contient plus de 20 000 enregistrements.
- Vous exécutez le package SSIS.
Dans ce scénario, le package SSIS peut échouer. En outre, les messages d’erreur suivants s’affichent :
Remarque
- Erreur : 0xC02020A1 à Data Flow tâche, source de fichier plat [1] : Échec de la conversion des données. La conversion des données pour la colonne « <column_name> » a renvoyé status valeur 4 et status texte « Le texte a été tronqué ou un ou plusieurs caractères n’ont pas de correspondance dans la page de codes cible ».
- Erreur : 0xC020902A à Data Flow tâche, source de fichier plat [1] : La « colonne de sortie « <column_name> » (199) » a échoué en raison d’une troncature, et la disposition de la ligne de troncature sur « column_name> colonne de< sortie » (199) » spécifie l’échec lors de la troncature. Une erreur de troncature s’est produite sur l’objet spécifié du composant spécifié.
- Erreur : 0xC0202092 à Data Flow tâche, source de fichier plat [1] : Une erreur s’est produite lors du traitement du fichier « <path_of_the_flat_file> » sur la ligne< de données row_number>.
- Erreur : 0xC0047038 à Data Flow tâche, SSIS. Pipeline : code d’erreur SSIS DTS_E_PRIMEOUTPUTFAILED. La méthode PrimeOutput sur le composant « Flat File Source » (1) a renvoyé un code d’erreur 0xC0202092. Le composant a renvoyé un code d’erreur lorsque le moteur de pipeline a appelé PrimeOutput(). La signification du code d’erreur est définie par le composant, mais l’erreur est irrécupérable et l’exécution du pipeline a cessé. Des messages d’erreur peuvent être affichés avant cela avec plus d’informations sur l’échec.
Symptômes
Ce problème se produit parce que les mémoires tampons d’entrée de l’analyseur de fichier plat divisent incorrectement le délimiteur multi-caractères en deux parties.
Cause
Informations sur les Service Packs
Pour résoudre ce problème, procurez-vous le dernier Service Pack pour SQL Server 2005.
Pour plus d’informations, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :
913089 Comment obtenir le dernier Service Pack pour SQL Server 2005
Résolution
Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».