sql >> Database >  >> RDS >> SQLite

Android SQLite:hoe een grote tabel genereren voor testdoeleinden?

U moet transacties gebruiken bij het schrijven naar een sqlite-database, anders blijven de gegevens voor elke invoeging behouden, d.w.z. bewaar het op sd, wat "voor altijd" zal duren.

laat insertProduct bijvoorbeeld een lijst met producten nemen en deze in één transactie opslaan:

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

Dit is hoe u het in uw bestaande code kunt implementeren:

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. Hoe krijg je een float-resultaat door twee integerwaarden te delen met T-SQL?

  2. Problemen oplossen:te veel omleidingen

  3. Hoe een IF-statement in SQL uit te voeren?

  4. Schakel SQL Server Agent in via SSMS