- BULK INSERT ?
BULK INSERT는 CSV 파일을 이용해서 대용량 데이터를 테이블에 INSERT 할 때 편리하다.
보통 Bulk INSERT용 테이블을 한개 만들고 Bulk INSERT로 해당 테이블에 INSERT 후 실제 테이블에 INSERT 하는 방식으로 진행한다.
(1) BULK INSERT 예제 : CSV파일 eforexcel.com/wp/downloads-20-sample-csv-files-data-sets-for-testing-till-2-million-records-bank-transactions/
- FIRSTROW: 시작할 행 , FIELDTERMINATOR : 구분자 , ROWTERMINATOR : 행 구분자 , BATCHSIZE : 일괄 처리 행 수
BULK INSERT A테이블 FROM '파일경로' WITH ( FIRSTROW = 2, FIELDTERMINATOR = ',', ROWTERMINATOR = '\n', BATCHSIZE = 100)
* Csv 파일을 메모장으로 열면 컬럼은 ","로 행은 \n로 구분되기 때문에
- 테이블 생성
CREATE TABLE [dbo]. [Sales] (
[Region] [varchar] (50),
[Country] [varchar] (50),
[ItemType] [varchar] (50) NULL,
[SalesChannel] [ varchar] (50) NULL,
[OrderPriority] [varchar] (50) NULL,
[OrderDate] datetime,
[OrderID] bigint NULL,
[ShipDate] datetime,
[UnitsSold] float,
[UnitPrice] float,
[UnitCost] float,
[ TotalRevenue] float,
[TotalCost] float,
[TotalProfit] float
)
- BLUK INSERT 진행
BULK INSERT Sales
FROM 'C:\Users\khs\Downloads\1500000 Sales Records'
WITH (FIRSTROW = 2,
FIELDTERMINATOR = ',',
ROWTERMINATOR='\n',
BATCHSIZE = 300000 )
- 완료
'MSSQL 기본' 카테고리의 다른 글
[MSSQL] 16진수, 10진수, ASCII 코드 변환 (0) | 2021.04.26 |
---|---|
[MSSQL] Index Seek / Index Scan (0) | 2021.01.28 |
[MSSQL] ColumnStore Index (0) | 2021.01.25 |
[MSSQL] Covered Index / Include Index (0) | 2021.01.23 |
[MSSQL] MSSQL 복제(Replications) (0) | 2020.10.30 |