Eka*_*ain 0 sql sqlite android
在我的应用程序中,我想基于两列更新我的数据库表.Means更新工资在哪里firstname="ekant"和.So last name="kancha"可以任何正文plz告诉我什么是我必须写的查询.
public int updateStatus(int salary,String fname,String lName)
{
ContentValues cv=new ContentValues();
String where = fname+ "=" + "ekanta";
cv.put("salary",salary);
return sdb.update(DATABASE_TABLENAME, cv, where, null);
}
Run Code Online (Sandbox Code Playgroud)
此代码仅在我想要根据名字更新时才有效.但我想根据名字和姓氏进行更新.
请帮帮我.谢谢
使用占位符.这使得更容易读取 SQL查询并防止SQL注入(意外或其他).
public int updateSalary (int salary, String fname, String lName)
{
ContentValues cv = new ContentValues();
cv.put("salary", salary);
/* use COLUMN NAMES here */
String where = "firstname = ? and lastname = ?";
/* bind VALUES here */
String[] whereArgs = new { fname, lname };
return sdb.update(DATABASE_TABLENAME, cv, where, whereArgs);
}
Run Code Online (Sandbox Code Playgroud)
如果你有private final static COLUMN_FNAME = "firstname"COLUMN NAMES的常量(例如),那么你可以where使用这些常量构建.
但是,不要将VALUES放在where字符串中.相反,按照上面的例子,?通过whereArgs阵列使用和提供任何VALUES .
此外,人们(甚至在同一组织内)也可以共享相同的名字和姓氏.在这种情况下围绕这种配对的数据库查询/更新将会中断,因此在设计API以使用更好的记录标识符时可能是谨慎的.
| 归档时间: |
|
| 查看次数: |
7948 次 |
| 最近记录: |