[kotlin] 데이터베이스(SQLite)로 데이터 저장하기

안드로이드 앱을 개발할 때 데이터를 영구적으로 저장하고 관리해야 할 때가 있습니다. 이때 SQLite 데이터베이스를 사용하여 데이터를 저장할 수 있습니다.

SQLite 데이터베이스란?

SQLite는 오픈 소스이며 경제적이며 경량의 데이터베이스 관리 시스템입니다. 안드로이드 앱에서는 SQLite를 내부 또는 외부 저장소에 쉽게 구현하여 데이터를 관리할 수 있습니다.

데이터 저장하기

데이터를 SQLite 데이터베이스에 저장하려면 먼저 데이터베이스를 만들어야 합니다. 그런 다음 테이블을 만들고 데이터를 추가할 수 있습니다.

다음은 Kotlin을 사용하여 SQLite 데이터베이스에 데이터를 저장하는 간단한 예제입니다.

import android.content.ContentValues
import android.content.Context
import android.database.sqlite.SQLiteDatabase
import android.database.sqlite.SQLiteOpenHelper

class DatabaseHandler(context: Context) :
    SQLiteOpenHelper(context, DATABASE_NAME, null, DATABASE_VERSION) {

    companion object {
        private const val DATABASE_VERSION = 1
        private const val DATABASE_NAME = "MyDatabase"
        private const val TABLE_NAME = "MyTable"
        private const val KEY_ID = "id"
        private const val KEY_NAME = "name"
    }

    override fun onCreate(db: SQLiteDatabase) {
        val createTable = ("CREATE TABLE " + TABLE_NAME + "("
                + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT" + ")")
        db.execSQL(createTable)
    }

    override fun onUpgrade(db: SQLiteDatabase, oldVersion: Int, newVersion: Int) {
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME)
        onCreate(db)
    }

    fun addData(name: String) {
        val db = this.writableDatabase
        val values = ContentValues()
        values.put(KEY_NAME, name)
        db.insert(TABLE_NAME, null, values)
        db.close()
    }
}

이 예제에서는 DatabaseHandler 클래스를 만들어 데이터베이스를 생성하고, 데이터를 추가하는 메서드를 만들었습니다.

결과

이렇게 하면 안드로이드 앱에서 SQLite 데이터베이스에 데이터를 성공적으로 저장할 수 있습니다. 데이터를 저장하고 나중에 필요할 때 anytime, anywhere로 접근할 수 있어 편리합니다.

참고