SQLite
 sql >> база данни >  >> RDS >> SQLite

Android SQLite:Как да генерирам голяма таблица с цел тестване?

Трябва да използвате транзакции, когато пишете в sqlite-база данни, в противен случай тя ще запази данните за всяко вмъкване, т.е. ще ги запази в sd, което ще отнеме "завинаги".

например, накарайте insertProduct да вземе списък с продукти и да ги запишете в една транзакция:

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

Ето как можете да го внедрите в съществуващия си код:

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. Предупреждение по време на компилиране в Android Room за колона във външен ключ, която не е част от индекс. Какво означава?

  2. Грешка в колоната _ID не съществува, въпреки че съществува в таблицата

  3. 6 начина за избор на дублиращи се редове в SQLite

  4. Пулът за връзки за база данни '/data/data/msv_database.db' не можа да предостави връзка. Връзки:0 активни, 1 неактивни, 0 налични

  5. Тестване на модули за база данни на Android SQLite