Effiziente Stapelverarbeitung von SQL-Abfragen unter Android zur Aktualisierung der Datenbank
Wie wir Android-Entwickler wissen, die SQLiteDatabase execSQL
ie @ -Methode kann nur eine Anweisung ausführen.
Der Doc sagt:
Ausführen einer einzelnen SQL-Anweisung, die keine Abfrage ist. Zum Beispiel,CREATE TABLE
, DELETE
, INSERT
usw. Mehrere durch @ getrennte Anweisung;
s werden nicht unterstützt.
Ich muss eine Reihe von Datensätzen laden, 1000 und zählen.
Wie füge ich diese effizient ein?
Und was ist der einfachste Weg, diese SQLs mit deiner apk zu liefern?
Ich erwähne, es gibt bereits eine Systemdatenbank und ich werde diese auf dem @ ausführonUpdate
Veranstaltung
Ich habe diesen Code bisher:
List<String[]> li = new ArrayList<String[]>();
li.add(new String[] {
"-1", "Stop", "0"
});
li.add(new String[] {
"0", "Start", "0"
});
/* the rest of the assign */
try {
for (String[] elem : li) {
getDb().execSQL(
"INSERT INTO " + TABLENAME + " (" + _ID + "," + NAME + "," + PARSE_ORDER
+ ") VALUES (?,?,?)", elem);
}
} catch (Exception e) {
e.printStackTrace();
}