android sql table 更新错误
android sql table update error
当我尝试更新 table 它没有 return 任何 error.But 更新不起作用。
这是我的插入和更新查询
谁能告诉我有什么问题吗?
我的插入语句(有效)
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+"'");
}
我的table结构如下
_id parameterId operation ondate offdate value
--------------------------------------------------------------------
1 1 on 15-03-2015 15-03-2015 0
2 1 on 15-03-2015 null 0
提前致谢...
我认为您的 where 子句在 parameterId 参数处有误:
...parameterId='"+ParameterId+"' ....
我猜 parameterId 是一个整数,所以你应该去掉引号:
...parameterId="+ParameterId+" ....
并且 offdate 参数应该是:
and offdate is null
当我尝试更新 table 它没有 return 任何 error.But 更新不起作用。
这是我的插入和更新查询
谁能告诉我有什么问题吗?
我的插入语句(有效)
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+"'");
}
我的table结构如下
_id parameterId operation ondate offdate value
--------------------------------------------------------------------
1 1 on 15-03-2015 15-03-2015 0
2 1 on 15-03-2015 null 0
提前致谢...
我认为您的 where 子句在 parameterId 参数处有误:
...parameterId='"+ParameterId+"' ....
我猜 parameterId 是一个整数,所以你应该去掉引号:
...parameterId="+ParameterId+" ....
并且 offdate 参数应该是:
and offdate is null