Update SQLite Datenbank

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Update SQLite Datenbank

    Hallo zusammen,

    ich habe eine App im AppStore mit einer SQLite Datenbank. Jetzt benötige ich für eine neue Funktion eine neue Tabelle und eine Tabelle muss um ein Feld erweitert werden. Die passenden SQL-Befehle sind kein Problem. Ich bin eher auf der Suche nach einer Stelle, wo ich in der App die Aktualisierung der Datenbank vornehme. Was ist hier der beste Weg ?

    Ich hatte die Idee das Aktualisieren der Datenbank über die Versionsnummer zu steuern und das SQL-Skript dann entsprechend dynamisch zu erzeugen (s. Beispiel). Bei dem Beispiel habe ich ja zwei Update Szenarien. Dabei stellt sich mir die Frage, kann ich vor dem Update irgendwie die alte Versionsnummer wegschreiben oder ist es sinnvoller manuell die Versionsnummer irgendwo zu speichern um so dann das SQl-Skript für die Aktualisierung der SQLite-Datenbank zu erstellen ?

    Beispiel :
    Update von 1.0 auf 1.1 enthält 2 SQL-Befehle um eine Tabelle hinzuzufügen und eine Tabelle um ein Feld zu erweitern.
    Update von 1.1 auf 1.2 enthalt 3 SQL-Befehle um Tabellen um x Felder zu erweitern.
  • ich schreib in jede db immer eine version-tabelle rein in der stehen unter anderem solche daten:

    von welchem programm zuletzt geöffnet (DB kann unter win und mac verwendet werden)
    von welcher programm-version zuletzt geöffnet
    welches die minimum programm-version ist welche die DB öffnen kann (wenn eine zu alte programmversion die DB öffnen will, erkennt sie das und sagt es dem user).
    eine datenbank-version (anhand derer die updates gemacht werden).
  • Ich habe auch eine Versionstabelle in meinen DB's. Wenn du (noch) keine hast, dann prüf doch einfach darauf und wenn nicht vorhanden dann mache das Update, welches auch gleich die Versiontabelle mit anlegt. Beim nächsten mal kannst du es dann über diese machen.

    Gruß

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)