Wie Datenbank weiter geben?

  • Mal angenommen ich entwickle eine App, die Daten in einer Datenbank speichert. Wie wird das mit der Weitergabe dieser Datenbank in Android gehandhabt?
    Entweder ich schreibe eine Klasse, die mir die Datenbank beim ersten Start der App generiert, oder ich erstelle die Datenbank vorher, und gebe sie bei der Auslieferung direkt mit. Was ist besser?

    Der erste Vorschlag hätte den Vorteil, dass ich die Struktur bei weiteren Versionen relativ einfach erweitern kann. Außerdem würde der zweite Vorschlag vermutlich die vorhandene Datenbank bei neuen versionen der App einfach überschreiben, oder?

  • Also in meiner App verwende ich für ~15 Activities ein und dieselbe Datenbank. Dazu habe ich im Hauptmenü eine public SQLiteDatabase erstellt, diese mit openOrCreateDatabase geöffnet/erstellt. Somit kann ich aus jeder Activity mit einem myDB = Hauptmenü.myDB dasselbe DB-Objekt verwenden.

  • Ich würds bei der Installation machen. dann kannst du auch schauen, was für eine SQLite-Version installiert ist und damit auf eventuelle unterschiede reagieren.

    mfg Florian

  • Wie erstellt man denn eine DB bei der Installation, wenn ich fragen darf?

    Ich würds bei der Installation machen. dann kannst du auch schauen, was für eine SQLite-Version installiert ist und damit auf eventuelle unterschiede reagieren.

    mfg Florian

  • Da hab ich mich etwas unglücklich ausgedrückt :O. Mit während der Installation meine ich beim ersten Start. Aber eine Erstellung bei der Installation der App auf dem Device wäre sicher auch ganz gut. Mal schauen ob ich dazu was finde. Wenn ja, poste ich es hier.

    mfg Florian

  • Jop, DB in den assets-Ordner tun kenn ich. Dachte nur man könnte sie wirklich bei der Installation erstellen lassen.

    Ja vielleicht find ich noch irgendwo eine Möglichkeit, wobei es ja eigentlich egal ist, ob diese nun erstellt wird oder schon mitgeliefert wird.

    mfg Florian

  • SQLiteOpenHelper ist dafür gedacht...damit wird beim ersten Zugriff ne Datenbank erstellt und sonst halt die bestehende zurück geliefert. Die fertige SQLite DB mitzuliefern halte ich für doof, weil du dann alle unterschiedlichen Versionen, Codierungen usw der SQLite Implem,entierung bedenken musst.

    Gruß
    Thorsten

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!