Prova a utilizzare un file di formato poiché il tuo file di dati ha solo 4 colonne. Altrimenti, prova OPENROWSET
oppure usa una tabella di staging.
myTestFormatFiles.Fmt
potrebbe assomigliare a:
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 "
(fonte:microsoft.com)
Questo tutorial su come saltare una colonna con BULK INSERT
può anche aiutare.
La tua dichiarazione quindi sarebbe simile a:
USE xta9354
GO
BULK INSERT xta9354.dbo.Students
FROM 'd:\userdata\xta9_Students.txt'
WITH (FORMATFILE = 'C:\myTestFormatFiles.Fmt')