BCP/ Bulk Insert Échoue (fichier délimité par des tabulations)

J'ai essayé d'importer des données (séparateur: tabulation) dans SQL server. La source de données est exporté à partir d'IBM Cognos. Les données peuvent être téléchargées à partir de: les données de l'échantillon

J'ai essayé BCP /Insertion en bloc, mais il n'a pas aidé. L'original fichier contient une ligne d'en-tête (qui doit être ignorée).

==================================
Schéma:

CREATE TABLE [dbo].[DIM_Assessment](
[QueryType] [nvarchar](4000) NULL,
[QueryDate] [nvarchar](4000) NULL,
[APUID] [nvarchar](4000) NULL,
[AssessmentID] [nvarchar](4000) NULL,
[ICDCode] [nvarchar](4000) NULL,
[ICDName] [nvarchar](4000) NULL,
[LoadDate] [nvarchar](4000) NULL
) ON [PRIMARY]
GO

=============================
Format de Fichier généré à l'aide de la commande suivante

bcp [dbname].dbo.dim_assessment format nul -c -f C:\config\dim_assessment.Fmt -S <IP>  -U sa -P Pwd

Contenu du fichier de format:

11.0
7
1       SQLCHAR             0       8000    "\t"     1     QueryType                    SQL_Latin1_General_CP1_CI_AS
2       SQLCHAR             0       8000    "\t"     2     QueryDate                    SQL_Latin1_General_CP1_CI_AS
3       SQLCHAR             0       8000    "\t"     3     APUID                        SQL_Latin1_General_CP1_CI_AS
4       SQLCHAR             0       8000    "\t"     4     AssessmentID                 SQL_Latin1_General_CP1_CI_AS
5       SQLCHAR             0       8000    "\t"     5     ICDCode                      SQL_Latin1_General_CP1_CI_AS
6       SQLCHAR             0       8000    "\t"     6     ICDName                      SQL_Latin1_General_CP1_CI_AS
7       SQLCHAR             0       8000    "\r\n"   7     LoadDate                     SQL_Latin1_General_CP1_CI_AS

=============================

J'ai essayé de l'importation de données à l'aide de la PCA /Bulk Insert, cependant, non d'entre eux travaillaient.

bcp [dbname].dbo.dim_assessment IN C:\dim_assessment.dat -f C:\config\dim_assessment.Fmt -S <IP>  -U sa -P Pwd

BULK INSERT dim_assessment FROM '\\dbserver\DIM_Assessment.dat'
WITH (
  DATAFILETYPE = 'char',
  FIELDTERMINATOR = '\t',
  ROWTERMINATOR = '\r\n'
);
GO

Je vous remercie d'avance pour votre aide@

  • Ce qui n'a "aucun d'entre eux travaillaient" signifie? Avez-vous un message d'erreur? Si oui, quel est-il?
  • Oui, en ce moment, je ne peut pas importer des données avec SSIS. Nous sommes à la recherche d'un moyen automatisé pour importer des données enregistrées sur le réseau dans le serveur SQL.
  • Je ne suis pas sûr de savoir comment cette réponse répond à aucune de mes questions.
  • Pas d'erreurs apparaissent. Sauf qu'il dit 0 les lignes copiées.
  • Lorsque vous essayez d'INSERTION en bloc, c'est ce qui se passe?
  • My bad, je n'ai pas vu votre commentaire avant de poster mon SSIS chose. désolé.
  • C'est ce que je vois pour l'instruction bulk insert
  • DataFileType sera supposé être widechar parce que le fichier de données a une signature Unicode. Msg 4866, Niveau 16, État 1, Ligne 1 Le gros échec de chargement de la. La colonne est trop long dans le fichier de données pour la ligne 1, colonne 7. Vérifiez que le champ et la marque de fin de ligne sont correctement spécifiés. Msg 7399, Niveau 16, État 1, Ligne 1, Le fournisseur OLE DB "en VRAC" du serveur lié "(null)" a signalé une erreur. Le fournisseur ne donne aucune information sur l'erreur. Msg 7330, Niveau 16, État 2, Ligne 1 Impossible de récupérer une ligne du fournisseur OLE DB "en VRAC" du serveur lié "(null)".

InformationsquelleAutor DataRiver | 2013-12-09