SQLite
 sql >> Baza danych >  >> RDS >> SQLite

Android SQLite:Jak wygenerować dużą tabelę do celów testowych?

Musisz używać transakcji podczas zapisywania do bazy danych sqlite, w przeciwnym razie dane będą utrwalane dla każdego wstawienia, tj. Zapisz je na sd, co zajmie „wieczność”.

na przykład spraw, aby insertProduct wziął listę produktów i zapisał je w jednej transakcji:

private void insertProducts(List<Product> products) {
    try {
        db.beginTransaction();
        for(Product product : products) {
            insertProduct(...);
        }
        db.setTransactionSuccessful();
    } finally {
        db.endTransaction();
    }
}

Oto jak możesz to zaimplementować w swoim istniejącym kodzie:

private void insertDemoProducts() {
    SQLiteDatabase sqlDB = database.getWritableDatabase();
    try {
        sqlDB.beginTransaction();
        for (int i = 1; i <= 100000; ++i) {
            String id = Integer.toString(i);
            insertProduct(id, "Test product " + id, "100", "75.50", "70.27");
        }
        sqlDB.setTransactionSuccessful();
    } finally {
        sqlDB.endTransaction();
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite - Nie można otworzyć pliku bazy danych

  2. android.database.sqlite.SQLiteException:blisko s:błąd składni (kod 1):,

  3. Jak przyciąć ciąg w SQLite

  4. Automatyczne zwiększanie wartości „id” podczas wstawiania do sqlite

  5. Maksymalny rozmiar bazy danych SQLite w aplikacji na Androida