CSV → SQL INSERT 생성기

CSV 데이터를 테이블에 바로 넣을 수 있는 SQL INSERT 문으로 변환합니다.

카테고리: 변환 도구

언제 사용하나요?

엑셀이나 CSV로 정리한 데이터를 데이터베이스에 넣어야 할 때, 테스트용 더미 데이터를 SQL로 만들어야 할 때, CSV 내보내기 결과를 다른 DB로 옮길 때 사용합니다.

사용 방법

  • 첫 줄에 컬럼명이 있는 CSV 데이터를 붙여넣습니다.
  • 테이블 이름과 구분자를 지정합니다.
  • 생성된 SQL INSERT 문을 복사해 데이터베이스에서 실행합니다.

입력값 안내

CSV의 첫 줄은 컬럼명(헤더)으로 사용됩니다. 쉼표·세미콜론·탭 구분자와 따옴표로 감싼 값을 지원합니다.

계산·변환 기준

각 행을 INSERT 문으로 변환하며, 숫자는 따옴표 없이, 문자열은 작은따옴표로 감싸고 내부 따옴표는 이스케이프합니다. 여러 행을 하나의 INSERT 문으로 묶거나 빈 값을 NULL로 처리하는 옵션을 제공합니다.

사용 예시

  • 데이터 마이그레이션 - CSV로 내보낸 데이터를 다른 데이터베이스로 옮깁니다.
  • 테스트 데이터 생성 - 개발·테스트용 더미 데이터를 SQL INSERT 문으로 만듭니다.
  • 초기 데이터 입력 - 엑셀로 정리한 초기 데이터를 테이블에 한 번에 넣습니다.

예시

  • id,name → INSERT INTO "users" ("id", "name") VALUES (1, '홍길동');
  • 여러 행 묶기 옵션으로 INSERT 한 번에 여러 VALUES 생성

주의사항

  • 잘못된 형식의 소스 데이터 입력 시 파싱 에러가 발생하거나 결과 레이아웃이 깨질 수 있습니다.
  • 인코딩 표준(UTF-8)이 맞지 않거나 복잡한 중첩 구조를 가진 소스 데이터를 변환할 경우 데이터 구조가 깨지거나 누락될 수 있습니다.

계산·사용 가이드

값 타입 처리

숫자 형식의 값은 따옴표 없이, 문자열은 작은따옴표로 감쌉니다. 문자열 안의 작은따옴표는 SQL 표준대로 두 개로 이스케이프됩니다.

INSERT 문 형태 선택

행마다 개별 INSERT 문을 만들거나, 여러 행을 하나의 INSERT … VALUES로 묶을 수 있습니다. 대량 입력에는 묶음 형태가 효율적입니다.

자주 묻는 질문

숫자와 문자열은 어떻게 구분되나요?

숫자 형식의 값은 따옴표 없이, 그 외 값은 작은따옴표로 감싸 처리합니다.

값에 따옴표가 들어 있으면요?

문자열 내부의 작은따옴표는 SQL 표준에 맞춰 두 개('')로 이스케이프됩니다.

빈 값은 어떻게 처리되나요?

"빈 값을 NULL로 처리" 옵션을 켜면 빈 칸이 NULL로 변환됩니다.

어떤 데이터베이스에서 쓸 수 있나요?

컬럼명을 큰따옴표(")로 감싸므로 표준 SQL을 따르는 PostgreSQL, SQLite, Oracle 등에서 바로 동작합니다. MySQL은 식별자에 백틱(`)을 쓰므로 큰따옴표를 백틱으로 바꾸거나 ANSI_QUOTES 모드를 사용해야 합니다.

관련 도구

  • CSV ↔ JSON 변환기 - CSV와 JSON 배열 데이터를 양방향으로 변환합니다.
  • CSV ↔ Markdown Table 변환기 - CSV 데이터를 마크다운 테이블로 바꾸거나 마크다운 테이블을 CSV로 되돌립니다.
  • JSON → 표 변환기 - JSON 객체 배열을 행과 열로 펼친 표로 변환하고 CSV로 내보냅니다.
  • SQL 포매터 - 압축되거나 뒤섞인 SQL 쿼리를 SELECT·FROM·WHERE·JOIN 등 절 단위로 보기 좋게 정렬합니다. MySQL·PostgreSQL·SQLite 등 주요 DBMS 방언을 지원합니다.
  • SQL IN 절 생성기 - 줄 목록을 SQL IN (…) 형태로 변환합니다.
  • URL 인코딩/디코딩 - 텍스트를 URL 안전 형식(%XX)으로 인코딩하거나 인코딩된 URL을 원래 텍스트로 디코딩합니다.