title: Inserting records into sqlite database only when the database is first created
body: <p>I want to insert records into my sqlite database only when the database is created (i.e. only when my app installs for the first time on a device).
  I googled for help and some people suggested to insert the data in the 
  <code>onCreate()</code> method of the <code>SQLiteOpenHelper</code>, but records couldn't be inserted using that method.</p>
  
  <p>This is my code</p>
  
  <pre><code>public class EventsData extends SQLiteOpenHelper {
  
      private static final String DATABASE_NAME = "events.db";
      private static final int DATABASE_VERSION = 1;
  
      // Table name
      public static final String TABLE = "events";
  
      // Columns
      public static final String NAME = "first";
      public static final String TITLE = "second";
  
      public EventsData(Context context) {
          super(context, DATABASE_NAME, null, DATABASE_VERSION);
      }
  
      @Override
      public void onCreate(SQLiteDatabase db) {
  
          db.execSQL("CREATE TABLE "+TABLE+"(" + _ID + "INTEGER PRMARY KEY AUTOINCREMENT, " + NAME +"TEXT, " + TITLE + "TEXT NOT NULL);");
          db.execSQL("INSERT INTO " + TABLE +" VALUES (1,'david','packard')");
      }
  
      @Override
      public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                      db.execSQL("DROP TABLE IF EXISTS " + TABLE);
                      onCreate(db);
      }
  }
  </code></pre>