2014-10-19 3 views
0

Я ничего не могу найти об этом в Интернете.Редактировать все значения в столбце в SQL

Мне нужно изменить все значения в столбце в моей базе данных, но я не могу найти способ.

Я делаю:

if (upgradeCursor.moveToFirst()){ 
      do { 
       db.editListsColumn("0"); 
      } while (upgradeCursor.moveToNext()); 
     } 

Где upgradeCursor:

return mDb.query(ProductsData.PRODUCTS_TABLE, null, null, null, null, null, null); 

И editListsColumn ("0"):

public void editListsColumn(String lists) { 
    mDb=mDbHelper.getWritableDatabase(); 
    ContentValues cv = new ContentValues(); 
    cv.put(ProductsMetaData.PRODUCT_PRODUCT, lists); 
    mDb.update(ProductsData.PRODUCTS_TABLE, cv, "lists=?", null); 
} 

Я застрял здесь.

Любое предложение было бы действительно оценено в данный момент! Огромное спасибо.

+0

'Это не работает' - ??????? – Simon

ответ

1

Вы пробовали простое обновление без предложения where и без итерации курсора. То, что я имею в виду просто называют это:

mDb=mDbHelper.getWritableDatabase(); 
ContentValues cv = new ContentValues(); 
cv.put(ProductsMetaData.PRODUCT_PRODUCT, lists); 
mDb.update(ProductsData.PRODUCTS_TABLE, cv, null, null); 

Без:

if (upgradeCursor.moveToFirst()){ 
      do { 
       db.editListsColumn("0"); 
      } while (upgradeCursor.moveToNext()); 
     } 

Из документации метода update(String table, ContentValues values, String whereClause, String[] whereArgs): прохождение NULL в whereClause обновит все строки.

http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html

Смежные вопросы