我正在尝试将记录添加到领域数据库表中。
我有一个类 Connection 代表我在数据库中需要的表,并创建了动态变量来代表列:
import Foundation
import RealmSwift
import Realm
open class ConnectionState: Object {
open dynamic var _id : String = NSUUID().uuidString
open dynamic var a : String = ""
open dynamic var b : String = ""
open dynamic var c : Int = 0
open override class func primaryKey() -> String? {
return "_id"
}
required public init() {
super.init()
}
required public init(realm: RLMRealm, schema: RLMObjectSchema) {
super.init(realm: realm, schema: schema)
}
required public init(value: Any, schema: RLMSchema) {
fatalError("init(value:schema:) has not been implemented")
}
}
然后在我的代码中,我尝试像这样编写并提交写事务:
let ConnectionState = ConnectionState()
ConnectionState.a = "a"
ConnectionState.b = "b"
ConnectionState.c = 1
try! self.realm.write {
self.realm.add(ConnectionState)
}
try! self.realm.commitWrite()
运行此代码时,我收到错误消息:
Can't commit a non-existing write transaction
我错过了什么?我的 ConnectionState 类中是否需要初始化?在添加 commitWrite 之前,我试图用领域浏览器查看数据库。我在 xCode 中找到了我的设备并选择下载容器,但它是空的。然后我想我需要添加commitWrite