sql >> Databasteknik >  >> RDS >> SQLite

Android SQLite:Hur genererar man en stor tabell för teständamål?

Du måste använda transaktioner när du skriver till en SQLite-databas, annars kommer den att bevara data för varje infogning, dvs spara den till sd som kommer att ta "för evigt".

till exempel, få insertProduct att ta en lista över produkter och spara dem i en transaktion:

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

Så här kan du implementera det i din befintliga kod:

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. Uppgradering av Slony-I 2.0.x till senaste version 2.1.x

  2. Hur visar man alla privilegier från en användare i Oracle?

  3. Introduktion till SQL Server Identity

  4. PostgreSQL fulltextsökning och trigramförvirring