[swift] 데이터베이스 및 데이터 모델 관리

이 기사에서는 Swift 애플리케이션에서 데이터베이스를 사용하고 데이터 모델을 관리하는 방법에 대해 설명합니다.

목차


데이터베이스 설정

Swift 애플리케이션에서 데이터베이스를 사용하려면 SQLite 혹은 Core Data와 같은 데이터베이스 시스템을 선택해야 합니다.

만약 SQLite를 사용한다면, SQLite.swift와 같은 라이브러리를 사용하여 데이터베이스를 만들고 연결할 수 있습니다.

import SQLite

let db = try Connection("path_to_database_file")

Core Data를 이용할 경우, Xcode의 Data Model Editor를 사용하여 데이터 모델을 정의하고 Core Data 스택을 설정할 수 있습니다.

데이터 모델 정의

애플리케이션의 데이터 모델은 데이터의 구조를 정의하는데 사용됩니다.

만약 SQLite를 사용한다면, 데이터 모델은 SQLite.swift에서 Table을 정의하는 방식으로 나타낼 수 있습니다.

let users = Table("users")
let id = Expression<Int>("id")
let name = Expression<String>("name")

try db.run(users.create { t in
    t.column(id, primaryKey: true)
    t.column(name)
})

Core Data를 사용하는 경우, Xcode의 Data Model Editor를 사용하여 Entity와 Attribute를 정의할 수 있습니다.

데이터 CRUD 작업

애플리케이션에서 데이터를 생성, 읽기, 갱신, 삭제(CRUD)하려면 다음과 같이 작업할 수 있습니다.

데이터 생성

let insert = users.insert(name <- "Alice")
let rowid = try db.run(insert)

데이터 읽기

for user in try db.prepare(users) {
    print("id: \(user[id]), name: \(user[name])")
}

데이터 갱신

let alice = users.filter(id == rowid)
try db.run(alice.update(name <- "Bob"))

데이터 삭제

try db.run(users.delete())

이제 당신은 Swift 애플리케이션에서 데이터베이스를 설정하고 데이터 모델을 정의하며, 데이터 CRUD 작업을 수행하는 방법에 대해 알게 되었습니다.


참조: