gpt4 book ai didi

Android数据库更新记录

转载 作者:搜寻专家 更新时间:2023-10-30 23:44:02 24 4
gpt4 key购买 nike

在我的数据库表中,我有 7 条记录。现在我想通过 WHERE 子句更新记录。首先统计记录,根据一个子句

int pos = 0;
String SQL = "SELECT COUNT(posizione) FROM operatori WHERE posizione>0;";
final Cursor cur = db2.rawQuery(SQL, null);
while (cur.moveToNext()) {
pos = cur.getInt(0);
}
cur.close();

//then, with a for loop, update all the records based on a WHERE clause
for (int i = 1; i <= pos; i++) {
ContentValues cv1 = new ContentValues();
cv1.put(OperatoriTable.POSIZIONE, i);
db2.update(OperatoriTable.TABLE_NAME, cv1, OperatoriTable.POSIZIONE + ">0", null);
}
db2.close();

但是,例如,如果 pos 等于 5,则应输入数字 1、2、3、4、5。相反,它总是插入 1。我哪里错了?

最佳答案

您的更新语句可能一次更新多行。每次您在 for 循环中调用 db2.update 时,它可能会用当前在 中的值覆盖所有 posizione>0 的行CV1.

关于Android数据库更新记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31301130/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com