sql >> Database teknologi >  >> RDS >> SQLite

Android SQLite:Hvordan genererer man en stor tabel til testformål?

Du skal bruge transaktioner, når du skriver til en sqlite-database, ellers vil det bevare dataene for hver indsættelse, dvs. gemme dem på sd, som vil tage "for evigt".

få for eksempel insertProduct til at tage en liste over produkter og gemme dem i én transaktion:

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

Sådan kan du implementere det i din eksisterende kode:

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. Træk år fra en dato i PostgreSQL

  2. Forbered en ny VM til SQL Server 2014 CTP1

  3. Hvilken kolonnetype/længde skal jeg bruge til at gemme en Bcrypt hashed adgangskode i en database?

  4. Regulært udtryk i PostgreSQL LIKE-sætning