이 문제와 관련하여 큰 문제가 있습니다. 나는 텍스트 및 정수로 "이름"과 "제한"열을 넣는 범주라는 내 sqlite 테이블이 있습니다.Android SQLite 행이 업데이트되지 않습니다.
private static final String CREATE_TABLE_CATEGORY = "CREATE TABLE "
+ TABLE_CATEGORIES + "(" + KEY_ID + " INTEGER PRIMARY KEY," + KEY_CATEGORY_NAME
+ " TEXT," + KEY_SET_LIMIT + " INTEGER" + ")";
종류의 모델 클래스있다 :
public class Category {
int id, limit;
String categoryName;
// Constructors
public Category(){
}
public Category(String categoryName, int limit){
this.categoryName = categoryName;
this.limit = limit;
}
//Setters
public void setCategoryName(String categoryName){
this.categoryName = categoryName;
}
public void setId(int id){
this.id = id;
}
public void setLimit(int limit) {
this.limit = limit;
}
// Getters
public String getCategoryName(){
return this.categoryName;
}
public int getId(){
return this.id;
}
public int getLimit() {
return this.limit;
}
@Override
public String toString(){
return getId() + " " + getCategoryName() + " " + getLimit();
}
}
가 및 카테고리 및 업데이트 방법을 만들 수있다 : 나는 종류의 클래스에서 toString 메소드를 오버라이드 (override) 한 회 전자에서
public long createCategory(Category cat) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_CATEGORY_NAME, cat.getCategoryName());
values.put(KEY_SET_LIMIT, cat.getLimit());
// insert row
long cat_id = db.insert(TABLE_CATEGORIES, null, values);
return cat_id;
}
public int updateCategoryLimit(long cat_id, int limit) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_SET_LIMIT, limit);
// updating row
return db.update(TABLE_CATEGORIES, values, KEY_ID + " = ?",
new String[] { String.valueOf(cat_id) });
}
을 몇 가지 코드입니다 . 다음과 같은 내용을 보여줍니다. 왼쪽부터 : ID, Category_Name, Category_Limit. 문제는 모든 제한을 10으로 설정한다는 것입니다. 다른 정수를 사용하더라도 항상 '2'가 표시됩니다. http://i.stack.imgur.com/Ae3YZ.png
그러나 범주 좋은 방법으로 추가됩니다. ID와 Category_Name은 문제가 없지만 제한 사항이 있습니다. insert()를 잠시 후에 확인하겠습니다. –
이것은 삽입물의 반환 이미지입니다. 그것은 나를 위해 잘 보인다 : http://s10.postimg.org/jxmkfwvqh/fail2.png –
나는 당신에게 코드를 시도, 잘 작동! 확인 : KEY_ID + "=?" , 당신은 올바른 key_id를 선택했습니다. –