0

每个人。这是在 android教程中使用 sqlite的一段代码:

return db.update(employeeTable, cv, colID+"=?", 
new String []{String.valueOf(emp.getID())});  

我不明白为什么在colID+"=?"'='之后留下'?

任何人都可以解释一下吗?

谢谢大家!

4

3 回答 3

1

这是参数化的语句,这意味着这String.valueOf(emp.getID())将被添加而不是?字符。?表示一个参数并String[]表示将添加到where子句的数据。

于 2012-06-18T13:26:09.623 回答
1

?是您的论点被替换到查询中的地方。在这种情况下,您的论点是String.valueOf(emp.getID()

于 2012-06-18T13:26:39.553 回答
1

这是一个准备好的满足。在这种情况下,您可以将查询定义为模板并留下一些参数以动态填充。您用 表示参数?。在您的情况下,您表示String.valueOf(emp.getID())将替换?.

于 2012-06-18T13:36:02.780 回答