Я ищу помощь для импорта файла .csv
в SQL Server с помощью BULK INSERT
, и у меня есть несколько основных вопросов.
Проблемы:
-
Данные файла CSV могут иметь
,
(запятая) между (Ex: description), поэтому как я могу импортировать данные этих данных? -
Если клиент создает CSV из Excel, тогда данные, имеющие запятую, заключены в
""
(двойные кавычки) [в качестве примера ниже], так как импорт может справиться с этим? -
Как мы отслеживаем, есть ли у некоторых строк плохие данные, которые импортируются? (импорт импортирует строки, которые не являются импортируемыми)
Вот пример CSV с заголовком:
Name,Class,Subject,ExamDate,Mark,Description
Prabhat,4,Math,2/10/2013,25,Test data for prabhat.
Murari,5,Science,2/11/2013,24,"Test data for his test, where we can test 2nd ROW, Test."
sanjay,4,Science,,25,Test Only.
И оператор SQL для импорта:
BULK INSERT SchoolsTemp
FROM 'C:\CSVData\Schools.csv'
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR = ',', --CSV field delimiter
ROWTERMINATOR = '\n', --Use to shift the control to next row
TABLOCK
)