Der Umgang mit der SQLite-Datenbank

  • In diesem Tutorial demonstriere ich den Umgang mit der SQLite Datenbank, insbesondere das Erstellen der Datenbank und der Datenbanktabellen wenn diese noch nicht vorhanden sind, das auslesen von Daten, das einfügen neuer und ändern schon vorhandener Daten.


    Als erstes legen wir einmal ein paar Variablen an um den Zugriff auf die Datenbank zu erleichtern.
    MY_DB_NAME enthält unseren Datenbanknamen und
    MY_DB_TABLE den Namen unserer Tabelle.
    Bei mehreren Tabellen müssen wir das entsprechend anpassen.


    Im onCreate unserer ersten activity rufen wir die Function "onCreateDBAndDBTabled" auf, die überprüft ob die Datenbank existiert.
    Sollte die Datenbank noch nicht existieren, wird diese angelegt,
    anschließend werden die benötigten Datenbanktabellen erzeugt.




    Neuen Datensatz einfügen


    Um nun einen neuen Datensatz in unserer Datenbanktabelle anzulegen,
    öffnen wir die Datenbank, schreiben unsere Daten in diese und schließen sie anschließend wieder.


    Die Daten die ich in die Datenbank einfügen will, kommen in diesem Beispiel aus verschiedenen Komponenten.
    Wir erinnern uns, wir haben folgende Spalten in unserer Datenbank.
    name, model, bemerkungen, kraftstoffart und tankinhalt.


    name, model, bemerkungen und tankinhalt sind vom Typ varchar.
    Diese Werte holen wir aus EditText-Komponenten.


    die Spalte kraftstoffart ist vom Typ integer. den Wert für die neue Kraftstoffart holen wir in diesem Bsp. aus einer Spinner-Komponente.





    Vorhandenen Datensatz updaten
    Natürlich wollen wir einen Datensatz später auch bearbeiten.
    Um nun einen bestimmten Datensatz bearbeiten zu können, müssen wir dessen ID übergeben um diese in der Datenbankabfrage verwenden zu können.


    Folgende Zeile fragt ab ob eine Variable mit dem Namen id an unsere activity übergeben wurde.


    Java
    if(getIntent().hasExtra("id") == true)


    Sollte die Variable übergeben worden sein, kann man diese für seine Abfrage verwenden.





    Bestimmte Spalten aus der Datenbank auslesen und in einer Liste ausgeben
    Nun wollen wir den Namen und das Model aller in der Datenbank vorhandenen Fahrzeuge in einer ListView ausgeben.




    Hier die xml-Datei für das Layout

    XML


    Wie sie eine Variable von einer activity an eine andere activity übergeben oder
    wie Sie die ID eines Datensatzes über den gewählten Eintrag in der ListView an ein ContextMenü übergben,
    um diese weiter zu verwenden, entnehmen Sie bitte den extra für diese Themen verfassten Tutorials.





    Auslesen von Daten in eine Spinner-Komponente (ComboBox)
    Hier noch ein kleines Beispiel wie Sie die Fahrzeugnamen aus der Datenbank
    in eine Spinner-Komponente auslesen können.



    Um diese Abfrage nutzen zu können, muss in der xml-Datei eine Spinner-Komponente
    mit der ID "cbFahrzeuge" vorhanden sein.



    Ich hoffe dass ich euch den Einstieg in den Umgang mit der SQLite-Datenbank
    durch mein Tutorial etwas erleichtern konnte.


    Sollten doch noch Fragen aufkommen, dann schickt mir einfach eine PM oder
    noch besser, stellt diese im Forum.

Jetzt mitmachen!

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