/ / Synchronizácia Core Data S adresárom - ios, objektív-c, core-data, adresár

Synchronizácia hlavných dát s adresármi - ios, objektívmi - c, core - data, adresár

Čo je najlepší spôsob, ako odstrániť všetky údaje, ktoré mám v mojomZákladný dátový súbor a prepíšte môj aktualizovaný adresár na moje kľúčové údaje? Existuje spôsob, ako prepísať údaje do základných údajov? ako to môžem urobiť v dobrej praxi?

Chcem byť schopný synchronizovať môj adresár a môjzákladný dátový súbor, jedna z metód bude kontrolovať, čo sa zmenilo v adresári, a vymazať alebo pridať záznamy v mojich základných údajoch podľa tejto zmeny (nemám záujem o editované záznamy) a jedna metóda bude len zmazať všetky moje údaje v mojom SQLite súbor s jadrom dát a uložiť aktualizovaný adresár znova do rovnakého súboru.

odpovede:

0 pre odpoveď č. 1

vidieť tento blogový príspevok od Brent Simmons a môj komentár k mojej odpovedi na vašu predchádzajúcu otázku.

Vymazanie partie objektov z Core Dataobchod je drahý. Musíte načítať a potom vytvoriť inštanciu každého NSManagedObject, potom ho odstrániť a potom posunúť zmeny do zásobníka Core Data. Tento proces zaberie oveľa viac času, než by trvať jednoduchý SQL DELETE.

Ak máte iné údaje v úložisku Core Data, Ktoré musia byť zachované, potom ste "znovu prilepené. Musíte to urobiť týmto spôsobom. Ale ak môžete odfúknuť váš dátový priestor a začať znova, že bude oveľa rýchlejší. Vytvorte nový Core Data Store s aktuálnymi dátami adresára. Uložte ho a zatvorte existujúci datastore Presuňte nový datastore do umiestnenia starého (alebo zmeňte cestu k novému úložisku).

Funkcia hromadnej aktualizácie v systéme iOS 8 pravdepodobne tento proces urýchli.