swe*_*men 7 sqlite sqlite.swift
我正在尝试使用SQLite Swift进行批量插入.但是,我不能100%确定我的代码是否正确.
我已经确定的Swift代码(因为它在时间上提供了最佳性能)是:
do {
try DB.transaction { () -> Void in
for index in 0...num_docs {
table.insert(data <- "test", data_num <- index)
}
}
} catch _ {
throw DataAccessError.Transaction_Error
}
Run Code Online (Sandbox Code Playgroud)
编辑----
如果我在swift中使用以下代码,则插入10000文档从+/- 12秒下降到0.8秒.听起来好得令人难以置信.
let docsTrans = DB.prepare("INSERT INTO TEST_DB (data, data_num) VALUES (?,?)")
do {
try DB.transaction(.Deferred) { () -> Void in
for index in 0...num_docs {
try docsTrans.run("test", index)
}
}
} catch _ {
throw DataAccessError.Insert_Error
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1110 次 |
| 最近记录: |