CSV to SQL 변환기
CSV 데이터를 붙여넣으면 PostgreSQL, MySQL, SQLite, SQL Server용 바로 실행 가능한 INSERT 문을 얻을 수 있어요. 배치 삽입, CREATE TABLE 선택지, 사용자 정의 구분자를 지원하고 모든 데이터는 브라우저에만 머물러요.
작동 방식: CSV를 붙여넣고 데이터베이스 방식과 테이블 이름을 선택하면 생성된 SQL을 복사해요. 배치 크기는 하나의 INSERT에 몇 줄의 행을 그룹화할지 제어해요. 미리보기 테이블은 첫 5개 행을 표시해서 복사하기 전에 파싱을 검증할 수 있어요. 어떤 서버로도 데이터가 전송되지 않아요.
INSERT INTO "my_table" ("id", "name", "email", "age", "active") VALUES
(1, 'Alice Johnson', 'alice@example.com', 28, TRUE),
(2, 'Bob Smith', 'bob@example.com', 34, FALSE),
(3, 'Carol Lee', 'carol@example.com', 22, TRUE),
(4, 'David Kim', 'david@example.com', 45, TRUE);| id | name | age | active | |
|---|---|---|---|---|
| 1 | Alice Johnson | alice@example.com | 28 | true |
| 2 | Bob Smith | bob@example.com | 34 | false |
| 3 | Carol Lee | carol@example.com | 22 | true |
| 4 | David Kim | david@example.com | 45 | true |
CSV to SQL 변환기란 무엇인가요?
CSV to SQL 변환기는 쉼표로 구분된 값(또는 다른 구분자)을 읽고 그 데이터를 관계형 데이터베이스에 로드하는 SQL INSERT 문을 생성해요. 수십 개의 INSERT 줄을 손으로 작성하는 대신 스프레드시트 내보내기를 붙여넣으면 몇 초 안에 프로덕션 준비 SQL을 얻을 수 있어요. 이 도구는 네 가지 주요 방식(PostgreSQL, MySQL, SQLite, SQL Server)을 지원하며, 각각 고유한 따옴표 규칙, 불린 처리, 구문 차이가 있어요. 값은 자동으로 숫자, 불린, NULL 또는 문자열로 감지되며, 문자열 값은 수동 임포트에서 SQL 인젝션을 방지하기 위해 적절히 이스케이프돼요.
INSERT 문 이해하기
표준 INSERT 구문은 INSERT INTO table_name (col1, col2) VALUES (val1, val2)예요. 이 도구는 기본적으로 행당 하나의 문을 생성하는데, 이것이 가장 안전하고 이식 가능한 접근 방식이에요. 각 열 식별자는 선택한 방식에 따라 따옴표로 묶여요 — MySQL은 백틱, SQL Server는 대괄호, PostgreSQL과 SQLite는 큰따옴표를 사용해요. 문자열 값은 단일 따옴표를 사용하며 내부 단일 따옴표는 두 배로 표시돼요(표준 SQL 이스케이핑 방식). 숫자 값은 따옴표 없이 그대로 작성되며, 빈 셀이나 리터럴 텍스트 'null'을 포함한 셀은 SQL NULL 키워드로 변환돼요.
배치 삽입과 성능
수천 개의 행을 삽입할 때 개별 INSERT 문은 각각 데이터베이스로의 별도 왕복이 필요하기 때문에 느려요. 배치 삽입은 여러 행을 하나의 문으로 그룹화해요: INSERT INTO t (a, b) VALUES (1, 2), (3, 4), (5, 6). 이렇게 하면 네트워크 오버헤드와 트랜잭션 수가 대폭 줄어들어요. 이 변환기는 배치 크기를 1(행당 하나의 문), 50, 100, 500, 또는 1000행으로 선택할 수 있게 해요. 배치 크기 100은 대부분의 데이터베이스에 안전한 기본값이에요. SQL Server는 다중행 VALUES 구문을 같은 방식으로 지원하지 않으므로 해당 방식에서는 배치가 자동으로 비활성화돼요.
CSV 임포트를 안정적으로 하기 위한 팁
- 첫 번째 행이 헤더인지 항상 확인하세요 — 열 이름이 SQL 식별자가 돼요
- CSV가 세미콜론(유럽 지역에서 일반적)이나 탭을 사용하면 구분자 선택기를 사용하세요
- 'CREATE TABLE 포함'을 활성화하면 삽입과 함께 테이블 정의를 얻을 수 있어요
- SQL을 복사하기 전에 미리보기 테이블을 검토해서 파싱 오류를 잡으세요
- 큰 파일의 경우 배치 크기 500–1000을 선호해서 임포트 시간을 줄이세요
- 임포트를 트랜잭션 내에서 실행하세요(BEGIN / COMMIT) — 오류 시 롤백할 수 있어요