我试图更新Sqlite(android)中的列,但日志显示以下错误。任何人都可以帮我解决它吗?sqlite返回:错误代码= 1,msg =接近“.....”:语法错误
06-11 12:52:21.373: I/Database(355): sqlite returned: error code = 1, msg = near "@gmail": syntax error
06-11 12:52:21.373: E/Database(355): Error updating password=12345 using UPDATE user SET password=? WHERE COL_USERID = [email protected]
06-11 12:52:21.373: D/AndroidRuntime(355): Shutting down VM
06-11 12:52:21.373: W/dalvikvm(355): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
06-11 12:52:21.393: E/AndroidRuntime(355): FATAL EXCEPTION: main
06-11 12:52:21.393: E/AndroidRuntime(355): android.database.sqlite.SQLiteException: near "@gmail": syntax error: , while compiling: UPDATE user SET password=? WHERE COL_USERID = something @gmail.com
这里是我的代码:
public long updateUserPassword(String userid, String password) {
ContentValues initialValues =
createUserPasswordContentValues(password);
return database.update(LOGIN_TABLE, initialValues, "COL_USERID = "+userid, null);
}
private ContentValues createUserPasswordContentValues(String password) {
ContentValues values = new ContentValues();
values.put(COL_PASSWORD, password);
return values;
}
我认为你必须添加蜱约于用户ID'“COL_USERID =‘‘+用户ID +’’”' – Jens