비교
SQLite와 CSV
SQLite는 테이블, 인덱스, 스키마를 저장하는 관계형 데이터베이스 파일입니다. CSV는 행과 열의 값을 교환하는 텍스트이며 자체적으로 데이터베이스 관계나 제약 조건을 보존하지 않습니다.
어떤 형식을 선택해야 할까요?
SQL 쿼리, 여러 테이블, 인덱스, 제약 조건, 트랜잭션이 필요하면 SQLite를 사용하세요. 한 테이블을 다른 앱에 전달할 때 CSV로 내보내세요. 대상 테이블, 열 이름과 유형, NULL과 빈 문자열, 인코딩, 선행 0, 날짜, 인용 규칙을 정하고 CSV에 담을 수 없는 구조는 따로 기록하세요.
적합한 경우 SQLite 데이터베이스
SQLite 호환 앱의 로컬 데이터 저장 · 앱과 소규모 서비스의 내장 데이터베이스
- 별도 서버 없이 SQL 사용
- 앱 데이터를 이동하기 쉬운 파일로 관리
적합한 경우 CSV
표 데이터 교환
- 앱 간 단순 표 하나 전달
기본 정보
| 항목 | SQLite 데이터베이스 | CSV |
|---|---|---|
| 확장자 | .sqlite, .sqlite3, .db | .csv |
| MIME 유형 | text/csv | |
| 주요 용도 | SQLite 호환 앱의 로컬 데이터 저장 · 앱과 소규모 서비스의 내장 데이터베이스 | 표 데이터 교환 |
| 여는 방법 | 사용 중 기본 파일만 복사하면 백업이 일관되지 않을 수 있음 | 스프레드시트로 가져올 때 문자 인코딩과 구분자를 지정합니다. 앞자리 0, 날짜처럼 보이는 값, 긴 숫자가 자동 변환되지 않는지 확인합니다. |
| 내보내기 또는 변환 | SQLite 호환 도구나 sqlite3로 여세요. 바이너리를 텍스트 편집기로 수정하지 말고 SQLite 백업 기능을 사용하세요. | XLSX를 CSV로 내보내면 보통 선택한 한 시트의 값만 기록됩니다. 수식, 서식, 다른 시트와 차트는 별도로 보관하세요. |
용도별 선택
별도 서버 없이 SQL 사용
SQLite 호환 앱의 로컬 데이터 저장 · 앱과 소규모 서비스의 내장 데이터베이스
SQLite 데이터베이스앱 데이터를 이동하기 쉬운 파일로 관리
SQLite 호환 앱의 로컬 데이터 저장 · 앱과 소규모 서비스의 내장 데이터베이스
SQLite 데이터베이스앱 간 단순 표 하나 전달
표 데이터 교환
CSV핵심 사항 1
SQLite 파일에는 SQL 행과 함께 스키마, 인덱스, 뷰, 트리거를 저장할 수 있습니다. CSV는 보통 선택적 헤더가 있는 텍스트 레코드이며 테이블 관계, 인덱스, 제약 조건을 표현하지 않습니다.
차이 자세히 보기핵심 사항 2
SQLite는 SQL 조회, 조인, 갱신, 제약 조건, 트랜잭션을 지원합니다. CSV는 앱이 파싱해야 하며 열 유형과 NULL의 의미를 별도로 합의해야 합니다.
차이 자세히 보기차이 자세히 보기
데이터베이스 동작이나 구조가 중요하면 SQLite를 유지하고, 이식 가능한 단일 표를 내보낼 때 CSV를 사용하세요. 사용 중인 SQLite 파일을 임의로 복사하지 말고 일관된 백업 기능을 사용하세요.
- CSV 내보내기는 보통 선택한 표의 값만 포함하며 인덱스, 제약 조건, 뷰, 트리거, 여러 표의 관계는 포함하지 않습니다.
- SQLite 파일을 복사할 때 WAL 또는 journal 상태를 고려하고 일관된 데이터베이스를 만드는 백업 방법을 사용하세요.
자주 묻는 질문
SQLite를 CSV로 내보내면 데이터베이스가 보존되나요?
아닙니다. 보통 선택한 표의 값만 내보내며 일반 CSV에는 스키마 동작, 인덱스, 트리거, 테이블 관계가 담기지 않습니다.