2016-05-30 3 views
0

Я использую очень простой код для обновления двумерного значения в строке, но он не обновляет значение. Вот мой код:Обновление запроса, не работающего в sqlite Android

private static final String KEY_ID = "_id"; 

public int updateContact(Biller_model_db contact) { 
    SQLiteDatabase db = this.getWritableDatabase(); 

    ContentValues values = new ContentValues(); 
    values.put(KEY_NAME, contact.getName()); 
    values.put(KEY_TYPE, contact.getType()); 
    values.put(KEY_AMOUNT, "Rs 0.0"); 
    values.put(KEY_DATE, ""); 

    // updating row 
    return db.update(TABLE_CONTACTS, values, KEY_ID + " =?", 
        new String[] { String.valueOf(contact.getID()) }); 
} 

Здесь я пытаюсь обновить количество и дату. Это, как я добавляю рекорд

DatabaseHandler_Update db = new DatabaseHandler_Update(
                SingleItemView.this); 


              Log.d("Insert: ", "Inserting .."); 
              DateFormat dateFormat = new SimpleDateFormat(
                "yyyy/MM/dd"); 
              Calendar cal = Calendar.getInstance(); 


              cal.add(Calendar.DATE, -Integer.parseInt(duedate)); 
              System.out.println("hellozzzzzzzzz" 
                + dateFormat.format(cal.getTime())); 
              db.addContact(new Biller_model_db(rank, country, 
                "Rs " + update_amount.getText().toString(), 
                "Due " + dateFormat.format(cal.getTime()))); 

Пожалуйста, исправьте, если я ошибаюсь где-то. Ошибка и код не сбой, но значения не обновляются.

+0

идентификатор, вероятно, неправильно, то – njzk2

+0

куда поместить идентификатор в этом – xyz

+0

Id является 1 по пути – xyz

ответ

0

частный SQLiteDatabase myDataBase;
// Обновление информации на основе имени таблицы и условия

private int updateData(String tableName, ContentValues values, String condition) { 
    try { 
     openDataBase(); 
    }catch (Exception e) 
    { 
     e.printStackTrace(); 
    } 
    return myDataBase.update(tableName, values, condition, null); 
} 
Смежные вопросы