Essayez d'utiliser un fichier de format car votre fichier de données ne comporte que 4 colonnes. Sinon, essayez OPENROWSET
ou utilisez une table intermédiaire.
myTestFormatFiles.Fmt
peut ressembler à :
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 "
(source :microsoft.com)
Ce tutoriel sur le saut d'une colonne avec BULK INSERT
peut également aider.
Votre déclaration ressemblerait alors à :
USE xta9354
GO
BULK INSERT xta9354.dbo.Students
FROM 'd:\userdata\xta9_Students.txt'
WITH (FORMATFILE = 'C:\myTestFormatFiles.Fmt')