Zum Hauptinhalt springen

SQLite Datenbank

SQLite Datenbank Datentypen

DatentypBeschreibung
INTEGERGanzzahl (inklusive Integer, Long, Short)
REALGleitkommazahl (inklusive Float, Double)
TEXTZeichenkette (Unicode-Text)
BLOBBinärdaten (z.B. Bilder, Videos)
NULLNullwert (entspricht dem Java-Null oder SQL NULL)

Daten in DB einfügen

SQLiteDatabase db = null;
try {
db = openOrCreateDatabase("PersonDB", MODE_PRIVATE, null);
db.execSQL("CREATE TABLE IF NOT EXISTS Persons (id INTEGER PRIMARY KEY, firstname TEXT, surname TEXT)");
db.execSQL("INSERT OR REPLACE INTO Persons VALUES (1,'David', 'Höll')");
} catch (Exception e) {
e.printStackTrace();
} finally {
db.close();
}

Eigenschaftsklasse Person

public class Person {
private int id;
private String firstname;
private String surname;

public Person(int id, String firstname, String surname) {
this.id = id;
this.firstname = firstname;
this.surname = surname;
}

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;
}

public String getFirstname() {
return firstname;
}

public void setFirstname(String firstname) {
this.firstname = firstname;
}

public String getSurname() {
return surname;
}

public void setSurname(String surname) {
this.surname = surname;
}
}

Daten aus Datenbank lesen

SQLiteDatabase db = null;
// set the columns of the table
String[] columns = {"id", "firstname", "surname"};
// set the Arguments
String[] selectionArguments = {"1"};
ArrayList<Person> persons = new ArrayList<>();
try {
db = openOrCreateDatabase("PersonDB", MODE_PRIVATE, null);

Cursor cursor;
// the arguments will replace the ?
cursor = db.query("Persons", columns, "id = ?", selectionArguments, null, null, null);

if (cursor != null && cursor.moveToFirst()) {
do {
int idIndex = cursor.getColumnIndexOrThrow("id");
int firstnameIndex = cursor.getColumnIndexOrThrow("firstname");
int lastnameIndex = cursor.getColumnIndexOrThrow("surname");

// add the data to an ArrayList
persons.add(new Person(cursor.getInt(idIndex), cursor.getString(firstnameIndex), cursor.getString(lastnameIndex)));
} while (cursor.moveToNext());
}
cursor.close();

} catch (Exception e) {
e.printStackTrace();
} finally {
db.close();
}
// print the data as toast popup
for (Person person : persons) {
Toast.makeText(getApplicationContext(),
person.getId() + " " + person.getFirstname() + " " + person.getSurname(),
Toast.LENGTH_LONG).show();
}

Kommentare