Avant la nouvelle version de Xcode 5
, j'étais capable de précharger datatables dans mon application cinput sur datatables en référençant le file du projet. Cependant, depuis que j'ai mis à jour mon XCode
, mes données json sont maintenant sauvegardées dans 3 files:
un file .sqlite vide
un file .sqlite-wal
un file .sqlite-shm.
Comment puis-je importer ces données dans mon application?
Dans le passé, tout ce que j'avais à faire était de copyr le file sqlite
et j'avais terminé. Maintenant, je n'ai aucune idée du file que je suis censé copyr.
J'ai découvert sur le site de développement d'Apple que pour get des données de base à l'ancienne (pré-iOS 7) et générer uniquement le file sqlite, j'ai dû append ceci à la méthode persistStore addStore, sous le paramètre options.
@{ NSSQLitePragmasOption : @{ @"journal_mode" : @"DELETE" } }
J'espère que cela aide quelqu'un d'autre qui rencontre ce problème.
À votre santé
Je peux confirmer le "compactage" de la database à l'aide de l'extension FIREFOX fournie par @Lukasz Kowalski. Ceci est confirmé avec 10.9.1 / Xcode 5 / iOS 7. Pour clarifier la procédure … téléchargez Firefox, puis récupérez son add-on SQLite Manager .
Copiez le dossier StoreContent contenant les files PersistentStore, PersistentStore-wal et PersistentStore-shm sur le bureau pour les regrouper en une seule database UIManagedDocument pré-iOS7 qui fonctionne comme auparavant. où find:
~/Library/ApplicationSupport/iPhoneSimulator/7.xx/Applications/gobble-d-gook/APPNAME/Documents/APPNAMEDatabase/StoreContent/{your database files}
Lancez Firefox, ouvrez la window, à partir du menu devises> Gestionnaire SQLite
Essayez juste le file sqlite. Voyez si cela fonctionne, ajoutez les deux autres un par un.
Vous pouvez également save le file JSON dans un file txt et le charger dans datatables de base. Selon la quantité de données que vous avez, vous devriez le faire par lots, le premier lot étant juste assez grand pour remplir la première vue, puis continuer à parsingr le rest. Tout dans une queue de fond bien sûr. Pas aussi facile qu'avant, mais c'est une solution. Peut-être que quelqu'un d'autre a une meilleure solution?
J'ai trouvé la solution pour créer un file .sqlite quand vous avez 3 files: .sqlite, .sqlite-wal et .sqlite-shm. Pour ce faire, vous devez utiliser l'addon "SQLite Manager" pour Firefox ( https://addons.mozilla.org/pl/firefox/addon/sqlite-manager/?src=userprofile ):