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

Tilføj kun data til SQLite-databasen én gang og læs flere gange

i SQLiteOpenHelper er der en metode, der kaldes én gang og kun én gang nogensinde, det er onCreate metode. så hvis du kun skal tilføje data til DB én gang, skal du gøre det i denne metode.

Men hvis du af en eller anden grund vil tilføje flere data til DB'en, kan du gøre det i onUpgrade metode denne gang.

tag dette simple eksempel:

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. Importer psycopg2 bibliotek ikke indlæst:libssl.1.0.0.dylib

  2. MySQL Performance – Langsom forespørgsel og innodb_buffer_pool_size

  3. Beregn decil i MySQL baseret på totaler

  4. Hvad er det dobbelte bord i Oracle?