中文回答Swift grdb 如何定义主键
在Swift的grdb中,我们可以通过在模型的定义中使用primaryKey()方法来定义主键。该方法接受一个属性键路径作为参数,用于指定模型中的主键属性。
下面是一个示例:
import GRDB
struct User: Codable, FetchableRecord, PersistableRecord {
var id: Int64
var name: String
var age: Int
enum Columns {
static let id = Column(CodingKeys.id)
static let name = Column(CodingKeys.name)
static let age = Column(CodingKeys.age)
}
static let databaseTableName = "users"
static func setupTable(_ db: Database) throws {
try db.create(table: databaseTableName) { t in
t.column(Columns.id, primaryKey: true)
t.column(Columns.name)
t.column(Columns.age)
}
}
}
在上面的例子中,我们定义了一个名为User的模型结构体,其中包含了id、name和age属性。我们使用primaryKey()方法将id属性指定为主键,并在setupTable方法中创建了对应的数据库表格。
需要注意的是,为了能够让grdb正确地将模型与数据库表格进行映射,模型需要遵循Codable、FetchableRecord和PersistableRecord协议,并提供databaseTableName属性来指定数据库表格的名称。
通过以上的定义,我们就成功地在Swift的grdb中定义了主键
原文地址: https://www.cveoy.top/t/topic/hG5m 著作权归作者所有。请勿转载和采集!