gpt4 book ai didi

ios - 如果不在数组中(FMDB sqlite Swift iOS),如何删除 id?

转载 作者:行者123 更新时间:2023-11-28 06:47:48 24 4
gpt4 key购买 nike

如果 id 不在数组中(FMDB sqlite Swift iOS),我该如何删除它?

for (var i=0; i < pointId!.count; i++){
do {
try db.executeUpdate("delete from POINTS where ID not in ?) values (?)", values: [pointId![i]])

} catch let error as NSError {
print("failed: \(error.localizedDescription)")
}
}

最佳答案

FMDB 要求数组用问号完全展开(FMDB 是 long standing issue):

try db.executeUpdate("delete from POINTS where ID not in (?, ?, ?)", values: [id1, id2, id3])

当然,痛点是构建一个问号数量可变的 SQL 查询。 你现在无法避免

您可以使用类似 databaseQuestionMarks() 的效用函数(在备用 SQLite 包装器中找到 GRDB.swift ):

let questionMarks = databaseQuestionMarks(count: ids.count)
let query = "delete from POINTS where ID not in (\(questionMarks))"
try db.executeUpdate(query, values: ids)

关于ios - 如果不在数组中(FMDB sqlite Swift iOS),如何删除 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35821037/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com