我必须使用以下代码更新名为CLERK的表中的详细信息:
try
{
//update query
myDataBase.execSQL("UPDATE CLERK SET" +
" CLK_NAME='" + sql_clk_name + "'," +
" CLK_EXPIRY_DATE='" + sql_expirydt + "'," +
" CLK_PASSWORD='" + sql_password + "'" +
" WHERE CLK_ID = '" + sql_clk_id + "'" , null);
Toast.makeText(getApplicationContext(), "MODIFIED !!!", Toast.LENGTH_SHORT).show();
}
catch (Exception ex)
{
Toast.makeText(getApplicationContext(),
"error modifying clerk",Toast.LENGTH_SHORT).show();
}
当我运行它时,我得到一个异常,ex=null
。该记录肯定存在于db。
当我使用"cursor = myDataBase.rawQuery"
代替"myDataBase.execSQL"
时,查询会执行但不会反映在数据库中..有人会帮助我
答案 0 :(得分:1)
感谢您的努力和时间。我怎么能找到更新的方法。
这就是......
ContentValues values=new ContentValues();
values.put("CLK_NAME", sql_clk_name);
values.put("CLK_EXPIRY_DATE", sql_expirydt);
values.put("CLK_PASSWORD", sql_password);myDataBase.update("CLERK",values,"CLK_ID='" + sql_clk_id + "'",null);
并且它像奇迹一样工作:)