[swift] Swift Realm에서의 데이터 삽입과 업데이트

소개

Realm은 iOS 앱에서 사용할 수 있는 실시간 데이터베이스이며, 데이터를 저장, 조회, 업데이트할 수 있는 강력한 기능을 제공합니다. 이번 블로그 포스트에서는 Swift Realm에서 데이터를 삽입하고 업데이트하는 방법에 대해 알아보겠습니다.

데이터 삽입하기

먼저, 데이터를 삽입하기 전에 Realm 객체를 초기화해야 합니다. Realm 객체를 초기화하면 Realm 데이터베이스에 연결할 수 있습니다.

import RealmSwift

do {
    let realm = try Realm()
} catch let error as NSError {
    print("Error initializing Realm: \(error.localizedDescription)")
}

이제 Realm 객체를 통해 데이터를 삽입할 수 있습니다. 간단한 예로, 사용자 정보를 저장하는 User 모델을 생성하고 데이터를 삽입해보겠습니다.

import RealmSwift

class User: Object {
    @objc dynamic var name = ""
    @objc dynamic var age = 0
}

do {
    let realm = try Realm()
    
    let user = User()
    user.name = "John"
    user.age = 25
    
    try realm.write {
        realm.add(user)
    }
} catch let error as NSError {
    print("Error inserting data: \(error.localizedDescription)")
}

위의 코드는 User 객체를 생성하고, 해당 객체에 데이터를 넣은 후 Realm의 write 트랜잭션 내에서 add 메서드를 사용하여 데이터를 삽입합니다.

데이터 업데이트하기

Realm에서 데이터를 업데이트할 때도 write 트랜잭션을 사용합니다. 데이터를 업데이트하기 위해 해당 데이터를 쿼리한 후 원하는 값으로 수정할 수 있습니다.

do {
    let realm = try Realm()
    
    let user = realm.objects(User.self).filter("name == %@", "John").first
    
    if let user = user {
        try realm.write {
            user.age = 26
        }
    }
} catch let error as NSError {
    print("Error updating data: \(error.localizedDescription)")
}

위의 예제에서는 “name” 속성 값이 “John”인 User 객체를 쿼리하고, 해당 객체의 “age” 속성을 변경하여 데이터를 업데이트합니다.

결론

이번 블로그 포스트에서는 Swift Realm에서 데이터를 삽입하고 업데이트하는 방법에 대해 알아보았습니다. Realm은 데이터베이스 조작을 쉽고 간단하게 처리할 수 있는 강력한 도구입니다. 데이터의 삽입과 업데이트 이외에도 Realm은 다양한 기능을 제공하므로, 관심 있는 기능을 추가적으로 탐구해보시기 바랍니다.

참고 자료