sql >> Databasteknik >  >> RDS >> SQLite

Lägg till data till SQLite-databasen endast en gång och läs flera gånger

i SQLiteOpenHelper finns det en metod som kallas en gång och bara en gång någonsin, det är onCreate metod. så om du bara behöver lägga till data till DB en gång måste du göra det med den här metoden.

Men om du av någon anledning vill lägga till mer data till DB kan du göra det i onUpgrade metod den här gången.

ta det här enkla exemplet:

public class DatabaseHandler extends SQLiteOpenHelper {

  private static final String DATABASE_NAME = "dbName";
  private static final int DATABASE_VERSION = 1;

  private static final String TABLE_NAME = "tableName";

  public MySQLiteHelper(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
  }

  //this function called only once ever in the life of the app
  @Override
  public void onCreate(SQLiteDatabase database) {
    //Create database query
    database.execSQL("create table " + TABLE_NAME + " (column1 type, columun2 type...); ");

    //Insert query
    database.execSQL("insert into " + TABLE_NAME + " values(value1,value2...);");
    database.execSQL("insert into " + TABLE_NAME + " values(value1,value2...);");
    database.execSQL("insert into " + TABLE_NAME + " values(value1,value2...);");
    database.execSQL("insert into " + TABLE_NAME + " values(value1,value2...);");
  }

  @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    //add more insert query if you need to add more datas after, but you have first to upgrade your DATABASE_VERSION to a higher number
  }

}



  1. Hur man får en lista över datum mellan två datum i mysql select query

  2. SQL Server-låsets anatomi och de bästa sätten att undvika dem

  3. Hur skapar man ett bord med två eller flera främmande nycklar med Android Room?

  4. IIf()-funktionen kontra IIf()-satsen