簡體   English   中英

如何一次刪除許多核心數據對象?

[英]How to remove many core data objects at once?

我正在編寫一個iOS應用,並且正在使用Core Data存儲一系列Event對象(想想生日,聖誕節或會議等)。 每個Event對象都有一個與日期屬性關聯的NSDate類型。

在整個程序過程中,我收集了一個NSDate對象的NSArray,我想知道如何刪除與這些日期關聯的核心數據對象? 例如,如果我有一個由日期11/7和12/9組成的數組,如何刪除日期屬性為11/7或12/9的任何Event對象?

我想到的一種可能性是使用謂詞和獲取請求來獲取所有相應的Event對象,然后轉身並刪除所有對象。 但是,這似乎效率很低。 如果我的Event對象中的一個真的非常大怎么辦...那么,拿到它並不會花很長時間,只是為了我可以轉身並刪除它?

我只是想知道是否有更優雅的方式來處理此問題...謝謝

您可以通過一次提取來處理此問題-使用IN運算符,將您的NSArray中的日期作為集合來構造謂詞,執行提取請求(如Mike所說,仍然相對較快),然后刪除對象。 有關更多信息,請參見《謂詞編程指南》中的“ 聚合運算符 ”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM