본문 바로가기
카테고리 없음

Android SQLite

by ekyoo 2022. 7. 10.
반응형
SMALL

Android SQLite 개요

안드로이드 전문 개발자가 되려면 데이터 저장 및 검색 방법을 알아야 합니다. SQLite는 단연코 가장 일반적으로 사용되는 모바일 데이터베이스 기술입니다. 파일 및 공유 기본 설정을 사용하는 것은 앱이 작은 데이터 비트를 저장하는 두 가지 훌륭한 방법입니다. 그러나 때때로 앱은 더 많은 양의 데이터를 더 구조적인 방식으로 저장해야 하는데, 이것은 보통 데이터베이스를 필요로 합니다. 안드로이드가 사용하는 기본 데이터베이스 관리 시스템(DBMS)을 SQLite라고 한다. SQLite는 SQL을 기반으로 DBMS를 제공하는 라이브러리입니다. SQLite는 소형 라이브러리입니다. 모든 기능을 활성화하면 대상 플랫폼과 컴파일러 최적화 설정에 따라 라이브러리 크기가 750KB 미만이 될 수 있습니다. (64비트 코드가 더 큽니다.) 그리고 일부 컴파일러 최적화는 객체 코드를 훨씬 더 크게 만들 수 있습니다. 메모리 사용과 속도 사이에는 절충이 있습니다. SQLite는 일반적으로 더 많은 메모리를 제공할수록 더 빨리 실행됩니다. 그럼에도 불구하고, 성능은 보통 낮은 메모리 환경에서도 꽤 좋습니다. SQLite는 사용 방법에 따라 직접 파일 시스템 I/O보다 빠를 수 있습니다. SQLite용 코드는 퍼블릭 도메인에 있으므로 상업적 또는 사적 용도로 자유롭게 사용할 수 있다. SQLite는 우리가 셀 수 있는 것보다 더 많은 응용 프로그램을 가진 세계에서 가장 널리 배포된 데이터베이스입니다. SQLite는 자체 포함, 서버리스, 제로 구성, 트랜잭션 SQL 데이터베이스 엔진을 구현하는 프로세스 내 라이브러리입니다. SQLite는 내장된 SQL 데이터베이스 엔진입니다. 다른 대부분의 SQL 데이터베이스와 달리 SQLite에는 별도의 서버 프로세스가 없습니다. SQLite는 일반 디스크 파일에 직접 읽고 씁니다. SQLite의 약어 "SQL"은 SQLite가 SQL 호환 데이터베이스 엔진임을 의미하는 Structured Query Language를 의미한다. Android에서 SQLite로 작업한다는 것은 두 개의 다른 언어 사이에서 번역한다는 것을 의미합니다. 저장할 데이터와 데이터를 생성하는 로직은 Java와 같은 객체 지향 언어로 작성됩니다.

 

SQLiteOpenHelper 클래스

다른 SQL 호환 DBMS에 비해 이름 그대로 설정하기 쉽고 사용하기 쉽습니다. SQLite를 Android에서 작업하는 것을 더 쉽게 해주는 도우미 클래스를 만들었습니다. SQLiteOpenHelper 클래스는 Android SQLite에서 작업할 때 가장 중요한 클래스입니다. SQLite OpenHelper를 사용하여 SQLite 데이터베이스를 만들고 업그레이드합니다. 즉, SQLiteOpenHelper는 다른 시스템에 데이터베이스를 설치하고 구성하는 데 필요한 작업을 제거합니다.

 

SQLite 특징

별도의 서버가 필요하지 않습니다. 별도의 설치가 필요하지 않습니다. 작업 중인 플랫폼에 SQLite가 필요한 경우 Android에서처럼 이미 포함되어 있습니다. Android에서는 freeSQLite입니다. SQLite는 Android보다 먼저 사용되며 Android 이외의 다른 주요 응용 프로그램에서 사용됩니다. 오늘날 SQLite가 안드로이드 개발에서 널리 사용되는 경우가 있지만, 적지 않은 수의 개발자들이 SQLite에 즐거워하고 혼란스러워하고 있습니다. 이러한 노력의 대부분은 다양한 ORM과 같은 SQLite에 대한 반작용으로, 일부는 콘텐츠 프로바이더와 같은 SQLite를 둘러싼 혼란을 가중시키고 일부는 영역 데이터베이스와 같은 새로운 접근 방식입니다. 테이블에 동적 유형을 사용합니다. 즉, 데이터 유형에 관계없이 모든 열에 값을 저장할 수 있습니다. 단일 데이터베이스 연결을 통해 여러 데이터베이스 파일에 동시에 액세스 할 수 있습니다. 메모리 내 데이터베이스를 만들 수 있으며, 작업 속도가 매우 빠릅니다. SQLite API를 사용할 때의 한 가지 단점은 원시 SQL 쿼리에 대한 컴파일 시간 검증이 없고 데이터베이스 구조가 변경되면 영향을 받는 쿼리를 수동으로 업데이트해야 한다는 것입니다. 다른 하나는 SQL 쿼리와 데이터 객체를 연결하고 변환하기 위해 많은 보일러 플레이트 코드를 작성해야 한다는 것입니다.

반응형
LIST

댓글