728x90
반응형
INSERT 문을 수십 수백 개 입력하여 데이터를 입력하기에는 상당히 번거로움이 많습니다.
그래서 .CSV 파일로 데이터를 한꺼번에 입력하는 방법을 알아보겠습니다.
- CSV 파일을 만듭니다.
모든 칼럼의 이름을 순서대로, 그리고 모두 입력하는 것이 좋습니다.
(createdAt, modifiedAt 은 자동으로 입력되겠거니 하고 했다가, 오류가 떠서 상당히 고생했습니다.)
[칼럼 이름을 입력하지 않았다가 발생한 타입미스매치 오류)
- 명령어를 입력합니다.
BULK INSERT [테이블이름]
FROM '파일경로'
WITH
(
firstrow = 2 -- 두번째 줄부터 입력
, fieldterminator = ',' -- 구분자는 ','
, rowterminator = '\n' -- 줄 바꿈은 '\n'
, tablock -- 값 입력 시 테이블 잠금
, batchsize = 100000 -- 100,000 개 데이터 입력
, codepage = '65001' -- 인코딩 방식(이게 없으면, 한글이 깨짐)
);
한번에 입력되었습니다.
샘플데이터를 입력하거나 DB 마이그레이션 할 때 등, 한 번에 여러 데이터를 입력할 때에
이렇게 빠르게 입력하시길 바랍니다.
(참고자료 및 출처)
BULK INSERT 또는 OPENROWSET(BULK ...)을 사용하여 데이터를 SQL Server로 가져오기🔗
MS SQL | BULK INSERT 한글 깨짐 방지/해결🔗
728x90
반응형
'Database > MSSQL' 카테고리의 다른 글
MS SQL | CREATE DATABASE IF NOT EXISTS 구현하기 (0) | 2023.03.15 |
---|---|
MS SQL | BULK INSERT 한글 깨짐 방지/해결 (0) | 2023.03.13 |
MS SQL | Primary Key 기본키 추가하기, 제약조건 (0) | 2023.03.08 |
MS SQL | UNIQUE 추가하기, 제약조건 (0) | 2023.03.06 |
MS SQL | Foreign Key 외래키 추가하기, 제약조건 (0) | 2023.03.03 |
댓글