SQL Server: Das Massenladen ist fehlgeschlagen. Die Spalte ist zu lange in der Daten-Datei für die Zeile 1, Spalte 1
Mir bitte jemand helfen hier. Um diese für ein paar Stunden jetzt, aber führt zu nichts.
Erstellte ich eine Tabelle in SQL Express 2008 R2 mithilfe des folgenden Skripts:
CREATE TABLE Features
(
ID int not null identity(1,1 ),
StopID varchar(10),
Code int,
Name varchar(100),
Summary varchar(200),
Lat real,
Lon real,
street varchar(100),
city varchar(50),
region varchar(50),
postcode varchar(10),
country varchar(20),
zone_id varchar(20),
the_geom geography
CONSTRAINT [PK_Features] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
Dann erstellte ich den folgenden format erstellte Datei gegen meine Datenbank-Tabelle mithilfe des bcp-tool:
10.0
12
1 SQLCHAR 2 100 "," 2 StopID Latin1_General_CI_AS
2 SQLINT 1 4 "," 3 Code ""
3 SQLCHAR 2 100 "," 4 Name Latin1_General_CI_AS
4 SQLCHAR 2 200 "," 5 Summary Latin1_General_CI_AS
5 SQLFLT4 1 4 "," 6 Lat ""
6 SQLFLT4 1 4 "," 7 Lon ""
7 SQLCHAR 2 100 "," 8 street Latin1_General_CI_AS
8 SQLCHAR 2 50 "," 9 city Latin1_General_CI_AS
9 SQLCHAR 2 50 "," 10 region Latin1_General_CI_AS
10 SQLCHAR 2 10 "," 11 postcode Latin1_General_CI_AS
11 SQLCHAR 2 20 "," 12 country Latin1_General_CI_AS
12 SQLCHAR 2 20 "\r\n" 13 zone_id Latin1_General_CI_AS
Diese Datei wurde geändert, um entfernen Sie die ID und the_geom Felder, da diese nicht in meine Daten-Datei.
Dann habe ich versucht zu bulk insert 1 line csv mit folgendem Inhalt:
a,8,S,,45.439869,-75.695839,,,,,,
und alles was ich bekomme:
Msg 4866, Level 16, State 7, Line 35
The bulk load failed. The column is too long in the data file for row 1, column 1. Verify that the field terminator and row terminator are specified correctly.
Msg 7399, Level 16, State 1, Line 35
The OLE DB provider "BULK" for linked server "(null)" reported an error. The provider did not give any information about the error.
Msg 7330, Level 16, State 2, Line 35
Cannot fetch a row from OLE DB provider "BULK" for linked server "(null)".
Alle Zeiger wird hier nicht helfen, da ich nicht diese Figur ein.
InformationsquelleAutor Klaus Nji | 2011-12-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Problem verursacht wurde, indem Sie das Standard-Präfix-Länge-Einstellungen in meinem format-Datei. Die Daten-Datei, die ich importieren wurde nicht erstellt mithilfe von bcp also ich musste die Präfix-Länge für alle Felder auf 0 wie folgt:
Mit dieser änderung, der import erfolgreich war.
Waren Sie in der Lage, bulk-legen Sie die Datei mit nur einer Zeile? Ich habe versucht das gleiche, aber wenn die eine (im Grunde ist die Zeile die Letzte Zeile) hat Letzte Spalte leer ist, (so wie in deiner Datei), es wird ignoriert, dass die Zeile vollständig. Ich habe nicht in der Lage, eine Lösung zu finden.
InformationsquelleAutor Klaus Nji
Versuchen, diese,
InformationsquelleAutor Milan Saha
Für was es Wert ist, ich hatte das gleiche problem, da ein Konflikt zwischen dem erwarteten format und tatsächliche format der Datum-Feld in der CSV. Ich änderte das Datum-format in der CSV, und es funktionierte.
InformationsquelleAutor Phillip Deneka