Search

240808_0958_SQLite

SQLite는 경량의 관계형 데이터베이스 관리 시스템(RDBMS)
1.
내장형 데이터베이스:
SQLite는 라이브러리 형태로 애플리케이션에 내장될 수 있다.
따라서 별도의 서버 프로세스를 실행할 필요가 없다.
대부분의 프로그래밍 언어에서 사용할 수 있으며, C, C++, Python, Java, Swift 등에서 주로 사용된다.
2.
파일 기반 저장:
SQLite는 모든 데이터베이스 객체를 단일 파일에 저장합니다. 이 파일은 플랫폼 독립적이며, 이를 통해 데이터베이스를 쉽게 이동하거나 백업할 수 있습니다.
3.
설치 및 설정이 간단:
별도의 설치 과정이 필요 없고, 설정도 매우 간단합니다. 소스 코드에 포함시켜 바로 사용할 수 있습니다.
4.
빠른 성능:
작은 크기의 데이터베이스에서 매우 빠른 성능을 보입니다. 이는 대부분의 임베디드 시스템이나 모바일 애플리케이션에 적합합니다.
5.
ACID 준수:
SQLite는 트랜잭션을 통해 Atomicity, Consistency, Isolation, Durability(ACID) 속성을 준수합니다. 이는 데이터의 무결성을 보장합니다.
6.
풍부한 기능:
표준 SQL을 지원하며, 트리거, 뷰, 인덱스, 복합 쿼리 등 다양한 기능을 제공합니다.
JSON, Full-Text Search(FTS), Common Table Expressions(CTEs)와 같은 고급 기능도 지원합니다.
7.
경량 및 휴대성:
코드베이스가 작고 가벼워서, 자원이 제한된 환경에서도 효율적으로 동작합니다.
데이터베이스 파일을 복사하거나 이동하는 것만으로도 데이터베이스의 백업 및 복원을 쉽게 할 수 있습니다.

사용 예시

sqlCopy code -- 데이터베이스 생성 및 연결 sqlite3 mydatabase.db -- 테이블 생성 CREATE TABLE users ( id INTEGER PRIMARY KEY, name TEXT NOT NULL, email TEXT UNIQUE NOT NULL ); -- 데이터 삽입 INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com'); INSERT INTO users (name, email) VALUES ('Bob', 'bob@example.com'); -- 데이터 조회 SELECT * FROM users; -- 데이터 업데이트 UPDATE users SET email = 'alice_new@example.com' WHERE name = 'Alice'; -- 데이터 삭제 DELETE FROM users WHERE name = 'Bob';
SQL
복사

SQLite의 사용 사례

모바일 애플리케이션: Android 및 iOS 앱에서 로컬 데이터 저장소로 자주 사용됩니다.
데스크탑 애플리케이션: 브라우저나 미디어 플레이어 등의 애플리케이션에서 로컬 데이터베이스로 사용됩니다.
웹 브라우저: 웹 애플리케이션에서 클라이언트 측 저장소로 사용됩니다.
임베디드 시스템: 자원이 제한된 임베디드 시스템에서 데이터 저장소로 사용됩니다.
SQLite는 간편하고 강력한 데이터베이스 시스템으로, 많은 애플리케이션에서 널리 사용되고 있습니다. 복잡한 데이터베이스 관리 시스템이 필요 없는 경우, SQLite는 매우 효과적인 선택이 될 수 있습니다.

안녕하세요

한국전자기술연구원 김영광입니다.
관련 기술 문의와 R&D 공동 연구 사업 관련 문의는 “glory@keti.re.kr”로 연락 부탁드립니다.

Hello

I'm Yeonggwang Kim from the Korea Electronics Research Institute.
For technical and business inquiries, please contact me at “glory@keti.re.kr”