Je tente d'insérer en bloc la première ligne d'un fichier CSV dans une table contenant une seule colonne. Mais je reçois des caractères supplémentaires ('n ++') dans le début comme celui-ci:Des caractères supplémentaires sont générés lors de l'insertion en bloc
n++First Column;Second Column;Third Column;Fourth Column;Fifth Columnm;Sixth Column
contenu du fichier CSV sont comme:
First Column;Second Column;Third Column;Fourth Column;Fifth Columnm;Sixth Column
Vous pouvez trouver le fichier test.csv here
Et voici le code que je utilise pour obtenir les premières données de ligne dans une table
declare @importSQL nvarchar(2000)
declare @tempstr varchar(max)
declare @path varchar(100)
SET @path = 'D:\test.csv'
CREATE TABLE #tbl (line VARCHAR(max))
SET @importSQL =
'BULK INSERT #tbl
FROM ''' + @path + '''
WITH (
LASTROW = 1,
FIELDTERMINATOR = ''\n'',
ROWTERMINATOR = ''\n''
)'
EXEC sp_executesql @[email protected]
SET @tempstr = (SELECT TOP 1 RTRIM(REPLACE(Line, CHAR(9), ';')) FROM #tbl)
print @tempstr
drop table #tbl
Une idée d'où vient ce 'n ++'?
prefer trim() over rtrim ( – Pratik
Je ne pense pas que TRIM existe. Le fait? –