将列中的所有行更新为新值

时间:2013-04-23 15:33:40

标签: android sqlite android-sqlite

道歉,我确信这已被多次询问,但我一直在寻找一个很好的例子而且找不到一个。

我想运行一个方法,将值插入到表中所有行的特定列中。为了让您了解我正在使用的方法和查询,这是我的Students表的工作更新方法:

public void updateStudent(long id,String name, String age, String points,
        String teachernote,byte[] blob) {
    ContentValues cv = new ContentValues();
    cv.put(Students.STUDENT_NAME, name);
    cv.put(Students.STUDENT_AGE, age);
    cv.put(Students.STUDENT_POINTS, points);
    cv.put(Students.TEACHERNOTE, teachernote);
    cv.put(Students.IMAGE,blob);

    db = sqlHp.getWritableDatabase();
    db.update(Students.TABLE, cv, Students.STUDENT_ID+"="+ id, null);
    db.close();
}

我正在查询更新所有行的STUDENT_POINTS。非常感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:5)

如果要更新所有行,则必须删除where子句。在您的示例中,您应该从Students.STUDENT_ID+"="+ id

中删除db.update(Students.TABLE, cv, Students.STUDENT_ID+"="+ id, null);