我有一个 SQLite 数据库,我想用一些初始数据填充它。
使用SQLite.swift,此方法似乎有效:
do {
let _ = try db.run( userDictionary.create(ifNotExists: false) {t in
t.column(wordId, primaryKey: true)
t.column(word, unique: true)
t.column(frequency, defaultValue: 1)
t.column(following, defaultValue: "")
})
} catch _ {
print("table already exists")
return
}
// Add some initial data for a new database
print("adding new data")
myMethodToInsertInitialData()
不过,这种工作方式是我ifNotExists: false
每次在初始数据库创建后都会抛出错误。(将其设置为true
不会抛出错误(或允许提前返回)。)但是,除了第一次之外,每次都故意抛出错误似乎是糟糕的编程。我并不是真的认为这是一个错误。我只想在新创建的数据库中插入一些数据。有没有更好的方法来做到这一点,还是每个人都这样做?