как я могу уменьшить столбец int таблицы SQLite - PullRequest
3 голосов
/ 23 марта 2012

В моей базе данных есть таблица, которая состоит из трех столбцов: «Экран», «Значок» и «Ранг».

я хочу найти все строки WHERE Screen = "myScreen" и Rank> 5 //, а затем сделать ранг на единицу меньше текущего значения.

public void DeleteScreenIcon (int id, String screenName, int rank){
        int screenID = getScreenID(screenName);
        SQLiteDatabase db=this.getWritableDatabase();
        db.delete(isLookUp, colScreenID + "=" + screenID + " and " +colIconID+ "="+id, null);
        // HERE IS WHERE I NOW WANT TO DO THAT..
        db.execSQL("update "+ isLookUp +" set "+colRank+ "=" +colRank+ " -1 "+" where " + colScreenID +  "='"  +screenName + "' and " + colRank +">" +rank);
        db.close();
    }

извините, я не так разбираюсь в SQL, любая помощь приветствуется

1 Ответ

6 голосов
/ 23 марта 2012

Это обновление должно помочь:

UPDATE myTable 
SET Rank = Rank - 1
WHERE Screen = "myScreen"
AND Rank > 5;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...