Assistant d'importation SQL Server échoue avec un message incompréhensible
Je veux juste importer des deux colonnes à partir d'un fichier plat dans une nouvelle table. J'ai mis une colonne "Code", à varchar(50)
et une autre colonne, 'Description', pour être nvarchar(max)
.
L'importation échoue avec le message suivant:
- Executing (Error)
Messages
Error 0xc02020a1: Data Flow Task 1: Data conversion failed. The data conversion for column "Description" returned status value 4 and status text "Text was truncated or one or more characters had no match in the target code page.".
(SQL Server Import and Export Wizard)
Error 0xc020902a: Data Flow Task 1: The "output column "Description" (14)" failed because truncation occurred, and the truncation row disposition on "output column "Description" (14)" specifies failure on truncation. A truncation error occurred on the specified object of the specified component.
(SQL Server Import and Export Wizard)
Error 0xc0202092: Data Flow Task 1: An error occurred while processing file "C:\Users\rinaldo.tempo\Desktop\ICD10_Edition4_CodesAndTitlesAndMetadata_GB_20120401.txt" on data row 3.
(SQL Server Import and Export Wizard)
Error 0xc0047038: Data Flow Task 1: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "Source - ICD10_Edition4_CodesAndTitlesAndMetadata_GB_20120401_txt" (1) returned error code 0xC0202092. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
(SQL Server Import and Export Wizard)
Le message d'erreur me donne à penser que les données sont tronquées, comme on l'a placé dans la colonne Description, qui est de type nvarchar(max)
! Ayant eyeballed les données d'entrée, je dirais que les descriptions ne sont jamais plus de 2 ou 300 caractères, donc c'est hors de question.
Quelqu'un peut-il suggérer quel est le problème ici?
source d'informationauteur David | 2013-01-08
Vous devez vous connecter pour publier un commentaire.
La taille par défaut pour les colonnes de la chaîne, de l'importation, est de 50 caractères. Cette troncation qui se passe avant les données de votre base de données.
Vous devez modifier cette option dans la première étape de l'Assistant d'Importation, dans le
Columns
section.L'erreur
peut se produire MÊME lorsque votre source de fichier plat est un fichier Unicode et votre cible colonne est définie comme
nvarchar(max)
.SSIS en déduit types de données dans le fichier source de l'analyse d'un nombre limité de lignes et de faire une supposition éclairée. En raison de l'infini de tentatives répétées pour qu'il fonctionne, il garé les métadonnées pour les données de type
OutputColumnWidth
à 50 caractères quelque part le long de la route, provoquant la troncature interne de l'emballage.Regarder dans les métadonnées de la Source de Données de l'onglet "Avancé" pour résoudre le problème.
vous cam aussi essayer ceci .
sélectionnez tous les
nvarchar
colonnesDt_NTEXT
dans l'ONGLET avancé, puis dans la conversion de données ,sélectionnezDT_WSTR
(Unicode_String) pour la Colonne Alias pour tous lesNvarchar
Champs de données.Il a travaillé pour moi :). Essayez
J'ai eu ce message en essayant de charger une 275 tableau de la colonne. Peu importe ce que j'ai fait, je ne pouvais pas faire passer le message à disparaître. Changer une colonne à la fois a été très difficile. Fix-en un, obtenez une erreur dans un autre. En Plus de certains, ne semble pas corriger.
Puis j'ai enlevé tous les ":" et "," caractères à partir de l'onglet délimité fichier source, et il chargé correctement.