Bonjour à tous et merci d'avancement pour le temps que vous accordez à mon problème,
(je précise avant tout que le problème est simplifié)
J'ai un fichier texte.CSV qui contient des lignes comme celle ci ->
1;BLABLA
2;TRUC
3;CHOSE
Je souhaite insérer ces lignes dans une table à deux champs :
l'un numérique l'autre alfa.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 SET QUOTED_IDENTIFIER ON GO CREATE TABLE matable ( [id] [int] NOT NULL, [texte] [nvarchar](10) NULL, CONSTRAINT [PK] PRIMARY KEY CLUSTERED ([id] ASC) ) ON [PRIMARY]
Pour cela j'utilise BULK INSERT :
Avec l'option FIRSTROW = 2 la première ligne ne s'insère pas (normal) et je n'ai pas d'erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 BULK INSERT matable FROM 'c:\texte.csv' WITH ( FIELDTERMINATOR = ';', ROWTERMINATOR = '\n', FIRSTROW = 1 ) GO
Avec FIRSTROW = 1 la première ligne ne s'insère pas et j'obtiens l'erreur suivante :
Ma question : comment j'insère la première ligne ?Msg 4864, Level 16, State 1, Line 2
Bulk load data conversion error (type mismatch or invalid character for the specified codepage) for row 1, column 1 (id).
Pouvez vous m'aider ?
Partager