当我尝试更新表时,它不会返回任何错误。但是更新不起作用。
这是我的插入和更新查询
有人能说出来有什么问题吗?
我的插入声明(工作)
public long insertValueWithOnDate(int ParameterId,String value,String date,String operation)
{
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_PARAMETER_ID, ParameterId);
initialValues.put(KEY_UNIT_VALUE, value);
initialValues.put(KEY_OPERATION, operation);
initialValues.put(KEY_ON_DATE, date);
initialValues.put(KEY_OFF_DATE, "");
return db.insert(DATABASE_TABLE, null, initialValues);
}
我的更新声明(不工作)
public void insertValueWithOfDate(int ParameterId,String value,String date,String operation)
{
db.execSQL("update Entries set operation='"+operation+"',offdate='"+date+"',value='"+value+"' where parameterId='"+ParameterId+"' and operation='"+"onn"+"' and offdate='"+null+"'");
}
我的表格结构如下
_id parameterId operation ondate offdate value
--------------------------------------------------------------------
1 1 on 15-03-2015 15-03-2015 0
2 1 on 15-03-2015 null 0
提前致谢...
答案 0 :(得分:0)
我认为你的where子句在parameterId参数中是错误的:
...parameterId='"+ParameterId+"' ....
我猜parameterId是一个int,所以你应该删除引号:
...parameterId="+ParameterId+" ....
并且offdate参数应该是:
and offdate is null