Spróbuj użyć pliku formatu, ponieważ Twój plik danych ma tylko 4 kolumny. W przeciwnym razie spróbuj OPENROWSET
lub użyj stołu pomostowego.
myTestFormatFiles.Fmt
może wyglądać tak:
9.0 4 1 SQLINT 0 3 "," 1 StudentNo "" 2 SQLCHAR 0 100 "," 2 FirstName SQL_Latin1_General_CP1_CI_AS 3 SQLCHAR 0 100 "," 3 LastName SQL_Latin1_General_CP1_CI_AS 4 SQLINT 0 4 "\r\n" 4 Year "
(źródło:microsoft.com)
Ten samouczek dotyczący pomijania kolumny za pomocą BULK INSERT
może również pomóc.
Twoje oświadczenie będzie wtedy wyglądać tak:
USE xta9354
GO
BULK INSERT xta9354.dbo.Students
FROM 'd:\userdata\xta9_Students.txt'
WITH (FORMATFILE = 'C:\myTestFormatFiles.Fmt')