Effiziente Batch-SQL-Abfrage-Ausführung auf Android, für Upgrade-Datenbank

Wie wir Android-Entwickler wissen, kann die SQLiteDatabase execSQL Methode nur eine Anweisung ausführen.

Der doc sagt:

  • Nicht unterstützte Gradle DSL-Methode gefunden: 'exclude ()'
  • Welche Layout-Ordner sind erforderlich, um alle Android-Geräte zu unterstützen?
  • Was passiert, wenn alle Aktivitäten einer Anwendung beendet sind?
  • Wie konvertiere ich HttpEntity in JSON?
  • Google Gibt an GitHub an
  • Wie kann ImageView Link zur Webseite?
  • Führen Sie eine einzelne SQL-Anweisung aus, die keine Abfrage ist. Zum Beispiel, CREATE TABLE , DELETE , INSERT , etc. Mehrere Anweisungen getrennt durch ; S werden nicht unterstützt.

    Ich muss in eine Reihe von Aufzeichnungen laden, 1000 und zählen.
    Wie kann ich diese effizient einfügen?
    Und was ist der einfachste Weg, um diese SQLs mit Ihrem apk zu liefern?

    Ich erwähne, es gibt bereits eine Systemdatenbank und ich laufe diese auf dem onUpdate Event.

    Ich habe diesen Code so weit:

     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(); } 

  • Rätselhaftes Verhalten mit REORDER_TO_FRONT
  • Wie kann man überprüfen, ob der Benutzer innerhalb eines Circle Google Maps v2 ist
  • Wählen Sie eine Nummer und einen Namen aus der Kontaktliste in der Android-App aus
  • Zugangskontakte und E-Mail-Adresse erhalten
  • Kleine EditText haben eine setError mit vielen Zeilen
  • Löschen EditText Text nach dem Hinzufügen vonTextChanged Implementierung
  • 2 Solutions collect form web for “Effiziente Batch-SQL-Abfrage-Ausführung auf Android, für Upgrade-Datenbank”

    Wie kann ich diese effizient einfügen?

    Transaktion verwenden:

      db.beginTransaction(); try { for(;;) { db.execSQL(...); } db.setTransactionSuccessful(); } finally { db.endTransaction(); } 

    Ich denke, was Sie haben, ist der einzige Weg, um diese 1000 Datensätze zu laden, jetzt, soweit die Bereitstellung dieser DB mit Ihrer Apk-Datei, schauen Sie sich diesen Beitrag:

    http://www.helloandroid.com/tutorials/how-have-default-database

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.