2 Stimmen

Wo wird die Sqlite-Datenbank für das iPhone in der Anwendung gespeichert?

Ich möchte wissen, wenn wir eine Anwendung installieren, wo sich die Datenbank der Anwendung befindet. Befindet sie sich im Anwendungsbündel oder in der Sandbox.

Und warum wirkt sich ein Upgrade nicht auf die bestehende Datenbank aus? Wenn ich zum Beispiel einige Änderungen an der Datenbanktabelle vornehme und sie neu installiere, verwendet sie immer noch die vorherige Tabelle. Wie funktioniert das eigentlich im Hintergrund?

3voto

invalidname Punkte 3155

Sie den Speicherort wählen, indem Sie beim Aufruf einen Pfad zu einer db-Datei angeben sqlite3_open . Der Pfad sollte mit ziemlicher Sicherheit zu einer Datei in Ihrem Dokumente-Verzeichnis führen, da jeder andere Ort entweder nicht gesichert wird (tmp) oder nicht zugänglich ist (das App-Bundle oder Pfade außerhalb Ihrer Sandbox).

Da Sie die Datei verwalten, könnten Sie auch eine .db-Datei auf Ihrem Computer mit dem Inhalt der Standarddatenbank erstellen, diese in Ihr App-Bundle legen und sie dann nach Documents kopieren, wenn Ihre App das erste Mal gestartet wird und keine Datei am erwarteten Ort findet.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X