Podczas analizy olbrzymiej ilości danych zdarza się, że edytory tekstu i regexp nie dają, wtedy, jedną z metod jest bulk insert danych z pliku do tabeli. Metoda bardzo wydajna, pozwalająca po imporcie swobodnie korzystać z dobrodziejstw SQL Server.
BULK INSERT TempTable FROM 'C:\Data\data.csv'
WITH(
FIRSTROW =2,
LASTROW =10,
FIELDTERMINATOR =',',--CSV field delimiter
ROWTERMINATOR ='\n',--Use to shift the control to next row
ERRORFILE ='C:\data_errorRows.csv',
TABLOCK
)
Gdzie,
- FIRSTROW – oznacza od którego wiersza dane będą importowane. Pozwala to ominąć nagłówek danych albo, w połączeniu z opcją LASTROW dokonać importu wybranej części danych
- LASTROW – wskazuje na ostatni importowany wiersz
- FIELDTERMINATOR – separator kolejnych pól
- ROWTERMINATOR – znak końca linii w importowanym pliku
- ERRORFILE – w tym pliku znajdą się rekordy, których nie udało się zaimportować.
- TABLOCK – zakłada blokadę na tabeli, do czasu wykonania importu. Znacząco przyspiesza import danych