如何以编程方式在客户端从数据库中删除CKRecord。
for record in records {
if recordNumber < 13 {
let moodRecord:CKRecord = record as! CKRecord
self.moodArray.append(moodRecord.objectForKey("Color") as! String)
}
else if recordNumber > 13 {
// DELETE RECORD HERE
record.delete(CKRecord)
recordNumber--
}
recordNumber++
}发布于 2015-05-19 21:45:46
CloudKit中的记录不是这样删除的。下面是我如何删除应用程序中的记录:
let operation = CKModifyRecordsOperation(recordsToSave: nil, recordIDsToDelete: [record.recordID])
operation.savePolicy = .AllKeys
operation.modifyRecordsCompletionBlock = { added, deleted, error in
if error != nil {
println(error) // print error if any
} else {
// no errors, all set!
}
}
CKContainer.defaultContainer().publicCloudDatabase.addOperation(operation)发布于 2017-09-26 07:57:56
您可以使用
删除(具有withRecordID:completionHandler:)
objc版本:
[aDatabase deleteRecordWithID:rec.recordID completionHandler:^(CKRecordID * _Nullable recordID, NSError * _Nullable error) {
;
}];发布于 2022-01-06 19:52:02
let database = CKContainer.default().publicCloudDatabase // or privateCloudDatabase
let recordID = someRecord.recordID
database.delete(withRecordID: recordID) { (ckRecordID, error) in
if let error = error {
print(error.localizedDescription)
return
}
guard let id = ckRecordID else {
return
}
print(id)
}https://stackoverflow.com/questions/30336590
复制相似问题