Nouplo

CSV → SQL

붙여넣은 표를, 바로 실행할 수 있는 형태로.

예제는 입력과 설정을 일시적으로 바꿉니다. 이전 작업을 복원할 수 있습니다.

0자
출력
위에 붙여넣거나 입력하면 여기에 결과가 표시됩니다.

파일은 내 기기 밖으로 나가지 않습니다

이 도구는 브라우저 안에서만 작동합니다. 붙여넣은 내용은 기기에서 처리되고 서버로 전송되지 않으므로 토큰, 키, 공개 전 문서도 안심하고 사용할 수 있습니다.

사용 예시

사용 예제 — CSV → SQL

입력 줄을 순서대로 입력하고 아래 설정을 사용하세요. 결과를 출력 줄과 비교하세요.

항목 값
입력 1 name,age
입력 2 Ada,36
입력 3 Lin,28
테이블 이름 people
구분 문자 자동 판별
첫 줄은 열 이름 켜짐
CREATE TABLE 도 출력 켜짐
식별자 감싸기 감싸지 않음
출력 1 CREATE TABLE people (
출력 2 name VARCHAR(16),
출력 3 age INTEGER
출력 4 );
출력 5 INSERT INTO people (name, age) VALUES
출력 6 ('Ada', 36),
출력 7 ('Lin', 28);

스크립트는 people을 만들고 두 행을 삽입하도록 생성됩니다. 이름은 따옴표로 감싸고 나이는 정수입니다. 데이터베이스에 연결하지 않습니다.

사용 방법

  1. CSV 나 TSV 를 붙여넣습니다. 스프레드시트에서 그대로 복사한 것도 됩니다.
  2. 테이블 이름을 정합니다. 필요하면 식별자 감싸는 방식도 고릅니다.
  3. 새 표라면 CREATE TABLE 을 켠 채로, 기존 표에 넣으려면 끕니다.
  4. SQL 을 복사해 실행합니다. 실행 전에 한 번 읽어 보세요.

자주 묻는 질문

열의 자료형은 어떻게 정하나요?
열에서 비어 있지 않은 셀을 모두 확인합니다. 02139 같은 우편번호는 앞자리 0을 보존하도록 텍스트로 처리합니다. 정수에는 INTEGER를, 더 큰 정수에는 BIGINT 또는 DECIMAL을 사용합니다. 소수의 정밀도와 소수 자릿수는 입력값에 맞춥니다. 필요한 정밀도가 38자리를 넘으면 텍스트로 처리합니다. 2024-02-29처럼 유효한 ISO 날짜는 DATE가 되며, 날짜와 일반 텍스트가 섞인 열은 텍스트로 남습니다.
값은 이스케이프되나요?
값 안의 작은따옴표는 두 번 겹칩니다. 어느 방언에서나 통하는 이스케이프입니다. 빈 칸은 빈 문자열이 아니라 NULL 이 됩니다. 내 데이터에 내가 직접 실행할 파일이라면 이것이 맞는 형태입니다.
폼이나 API 에서 온 데이터에 써도 되나요?
안전하지 않습니다. 여기서 나오는 것은 플레이스홀더가 아니라 리터럴이고, 내가 입력하지 않은 값으로 이렇게 문을 만드는 것이 바로 SQL 인젝션이 일어나는 방식입니다. 자동화한다면 드라이버의 파라미터를 쓰세요.
왜 여러 행을 묶나요?
100행을 한 문으로 넣는 편이 100개의 문보다 훨씬 빠르고, 읽을 수 있는 크기로도 남기 때문입니다. 하나씩 실행하고 싶으면 한 줄로 바꾸세요.
입력한 내용이 어디로 전송되나요?
아니요. 브라우저 안에서 동작하므로 붙여넣은 내용은 내 컴퓨터를 떠나지 않습니다.

관련 도구