コード例 #1
0
  public void update(Routine updatedRoutine) throws Exception {
    SQLiteDatabase database = dbHelper.getWritableDatabase();

    database.beginTransaction();
    try {
      SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.UK);
      Date date = new Date();
      ContentValues values = new ContentValues();
      int routineId = updatedRoutine.getId();
      String[] whereArgs = new String[] {Integer.toString(routineId)};
      values.put(DbHelper.ROUTINE_NAME, updatedRoutine.getName());
      values.put(DbHelper.ROUTINE_DATE_UPDATED, dateFormat.format(date));

      database.update(DbHelper.ROUTINES, values, DbHelper.ROUTINE_ID + "=?", whereArgs);
      values.clear();
      database.delete(DbHelper.STEPS, DbHelper.STEP_ROUTINE_ID + "=?", whereArgs);
      saveSteps(updatedRoutine, database);
      database.setTransactionSuccessful();
    } catch (Exception e) {
      database.endTransaction();
      database.close();
      throw e;
    }
    database.endTransaction();
    database.close();
  }
コード例 #2
0
  @Override
  public void insert(Routine newRoutine) throws Exception {
    SQLiteDatabase database = dbHelper.getWritableDatabase();

    database.beginTransaction();
    try {
      SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.UK);
      Date date = new Date();
      ContentValues values = new ContentValues();
      values.put(DbHelper.ROUTINE_ID, newRoutine.getId());
      values.put(DbHelper.ROUTINE_NAME, newRoutine.getName());
      values.put(DbHelper.ROUTINE_DATE_CREATED, dateFormat.format(date));
      values.put(DbHelper.ROUTINE_DATE_UPDATED, dateFormat.format(date));
      database.insertOrThrow(DbHelper.ROUTINES, null, values);
      saveSteps(newRoutine, database);
      database.setTransactionSuccessful();
    } catch (Exception ex) {
      database.endTransaction();
      database.close();
      throw ex;
    }
    database.endTransaction();
    database.close();
  }