У меня есть файл CSV, созданный другим процессом (который я не могу изменить), который включает отметку времени и имя пользователя в строке под данными. Мне нужно импортировать данные без последней строки, потому что это вызывает ошибку из-за того, что это недопустимое значение столбца.
Если я удалю эту строку вручную (чего я хочу избежать), мой SQL может успешно импортироватьиспользуя данные:
BULK INSERT #TempReport
FROM 'D:\ac2000\Reg.csv'
WITH
(
FORMAT = 'CSV',
FIRSTROW = 2, -- second row so skip header row in csv file
FIELDTERMINATOR = ',', --CSV field delimiter
FIELDQUOTE = '"', -- Double quote mark is a text delimiter
ROWTERMINATOR = '\n'
)
Я знаю, что есть также опция LASTROW в Bulk Insert, но CVS будет каждый раз иметь разное количество строк, поэтому мне нужен способ для вычисления количества строк, не импортируя его! ... или, по крайней мере, не импортировать его описанным выше способом, что приводит только к другой ошибке.