본문으로 건너뛰기

Excel에서 SQLite로 변환

Excel 파일을 놓으면 CREATE TABLE과 INSERT 문이 담긴 SQLite 스크립트가 만들어져요. 열마다 타입을 정하고, 모든 수정 사항을 행과 열과 함께 나열해요.

내 파일
xlsxclientes_2024.xlsx샘플 파일, 7kB
내 데이터베이스

4개 행 변환, 수정 10개, 거부 없음

보기
clientes_2024.xlsx의 처음 몇 행이며, 수정한 부분마다 표시되어 있어요
행
500127Peña Muñoz0123403/02/2024sí1.234,50
600128José Ángel0987015/02/2024noN/A
700129Zoë Ortíz4410029/02/2024sí-12,00
800130Ñuño Castañeda0670011/03/2024no980,75
-- Written by IntoSQL for SQLite.

BEGIN;

CREATE TABLE clientes_2024 (
    no_cliente TEXT NOT NULL, -- Nº Cliente
    nombre TEXT NOT NULL,
    c_p TEXT NOT NULL, -- C.P.
    alta DATE NOT NULL,
    activo BOOLEAN NOT NULL,
    saldo NUMERIC(6,2)
);

INSERT INTO clientes_2024 (no_cliente, nombre, c_p, alta, activo, saldo) VALUES
('00127', 'Peña Muñoz', '01234', '2024-02-03', 1, 1234.50),
('00128', 'José Ángel', '09870', '2024-02-15', 0, NULL),
('00129', 'Zoë Ortíz', '44100', '2024-02-29', 1, -12.00),
('00130', 'Ñuño Castañeda', '06700', '2024-03-11', 0, 980.75);

COMMIT;

수정 사항

  1. 헤더는 4행에 있어요. 그 위의 행은 제외했어요.
  2. 9행("TOTAL")은 합계라서 제외했어요.
  3. SQLite에서 따옴표 없이 읽을 수 있도록 "Nº Cliente" 열 이름을 no_cliente(으)로 바꿨어요.
  4. SQLite에서 따옴표 없이 읽을 수 있도록 "C.P." 열 이름을 c_p(으)로 바꿨어요.
  5. "Nº Cliente" 열의 앞자리 0을 유지했어요. 00127 값은 00127 그대로 텍스트로 저장돼요.
  6. "C.P." 열의 앞자리 0을 유지했어요. 01234 값은 01234 그대로 텍스트로 저장돼요.
  7. 15/02/2024 값을 보면 "Alta" 열의 날짜는 일이 먼저예요. 그래서 03/02/2024 값을 2024‑02‑03 날짜로 읽어요.
  8. "Activo" 열에 예/아니요 단어(sí, no)가 있어 불리언으로 저장했어요.
  9. "Saldo" 열의 숫자는 소수점으로 쉼표를 써요. 1.234,50 값을 1234.50 값으로 읽어요.
  10. "Saldo" 열의 N/A 값을 빈 값으로 읽었어요(4개 중 1개).

파일은 이 컴퓨터에서 변환되고 업로드되지 않아요.

다른 샘플:

Excel에서 SQLite까지, 열 하나씩

IntoSQL이 위 샘플 파일 clientes_2024.xlsx을(를) SQLite용으로 쓴 결과예요. 각 열이 파일에 담은 내용, 받는 형식, 첫 값이 스크립트에 들어가는 모습을 보여 줘요.

파일에서첫 값열SQLite 형식스크립트에서
Nº Cliente00127no_clienteTEXT'00127'
NombrePeña MuñoznombreTEXT'Peña Muñoz'
C.P.01234c_pTEXT'01234'
Alta03/02/2024altaDATE'2024-02-03'
ActivosíactivoBOOLEAN1
Saldo1.234,50saldoNUMERIC(6,2)1234.50

스크립트를 SQLite에 불러오기

다운로드한 파일은 일반 .sql 파일이에요. SQLite 자체 도구로 실행하세요.

터미널에서

sqlite3 clientes_2024.db < clientes_2024.sqlite.sql

데이터베이스 파일이 없으면 새로 만들어져요. 변환기에서는 명령 없이 바로 쓸 수 있는 .sqlite 데이터베이스도 다운로드할 수 있어요.

데이터베이스 도구에서

DB Browser for SQLite에서 Execute SQL을 고르고 스크립트를 열어 실행하세요.

스크립트 없이

명령줄은 파일을 SQLite 데이터베이스에 바로 불러와요. 스크립트를 따로 만들 필요가 없고 무료예요.

intosql load clientes_2024.xlsx --into clientes_2024.db

Excel 파일과 SQLite에 대해 알아 둘 점

IntoSQL이 Excel 파일에서 읽는 내용

  • 위에 제목이나 메모가 있어도 머리글 행을 찾고, 맨 끝의 합계 행은 제외해요.
  • Excel 일련번호로 저장된 날짜는 1900 날짜 체계와 1904 날짜 체계 모두에서 실제 날짜가 돼요.
  • 00127처럼 앞에 0이 있는 코드는 텍스트로 유지돼요. 통합 문서에 시트가 여러 개 있으면 시트를 직접 고를 수 있어요.

SQLite에 대해 알아 둘 점

  • 각 열은 값에 맞는 타입을 받아요. INTEGER, NUMERIC, TEXT, DATE, BOOLEAN 등이며, 예/아니요는 1과 0으로 저장돼요.
  • 15자리가 넘는 소수는 TEXT로 남아서 반올림으로 사라지는 자릿수가 없어요.
  • SQLite 스크립트나 브라우저에서 만든 바로 쓸 수 있는 .sqlite 데이터베이스를 다운로드하세요.

SQLite에서 값의 종류별 저장 방식

값SQLite
예/아니요BOOLEAN
정수INTEGER
큰 정수INTEGER
소수NUMERIC(p,s)TEXT
부동소수점REAL
날짜DATE
시각TIME
날짜와 시간DATETIME
날짜, 시간과 시차DATETIME
텍스트TEXT

Excel에서 SQLite(으)로 변환하기에 관한 질문

여기에 답이 없나요? 문의 페이지로 연락하시면 담당자가 답장해요. 문의 페이지

Excel 파일을 SQLite용으로 어떻게 변환하나요?

이 페이지 위쪽의 변환기에 파일을 놓으세요. 헤더를 찾고 모든 값을 읽은 뒤, 적용한 수정 사항을 나열하며 SQLite 스크립트를 써요. 스크립트를 다운로드해 sqlite3에서 실행하세요.

통합 문서의 어느 시트가 변환되나요?

보이는 첫 번째 시트예요. 시트가 여러 개면 시트 옵션이 나타나서 다른 시트를 고를 수 있어요.

SQLite에서는 어떤 형식을 쓰나요?

예/아니요 값은 BOOLEAN, 정수는 INTEGER, 소수는 NUMERIC(p,s), 날짜는 DATE, 시각이 있는 날짜는 DATETIME, 텍스트는 TEXT 형식이 돼요. 크기는 각 열에서 가장 긴 값에 맞춰져요.

SQLite에서 앞자리 0이 유지되나요?

네. 00127 같은 코드는 텍스트로 유지되므로 SQLite에 TEXT 형식으로 저장되고 스크립트에는 '00127'(으)로 쓰여요.

스크립트 없이 SQLite에 데이터를 불러올 수 있나요?

네, 무료로요. intosql load가 SQLite 데이터베이스 파일을 만들고 행을 불러와요. 이 페이지의 변환기에서도 바로 쓸 수 있는 .sqlite 데이터베이스를 다운로드할 수 있어요.

Excel 파일은 얼마나 커도 되나요?

브라우저는 통합 문서를 통째로 읽으므로, 한도는 브라우저가 이 페이지에 주는 메모리예요. 데스크톱 앱과 명령줄은 크기에 상관없이 통합 문서를 처리해요. Apple M4 노트북에서 명령줄은 100만 행, 117MB 통합 문서를 약 1초 만에 변환해요.