Способ, которым вы объединяете параметр note
, создает sql оператор:
SELECT ID FROM ALLWORKHOURS WHERE NOTEMEMOS = hey
, поэтому hey
считается идентификатором столбца, а не строковым литералом, поскольку он не заключен в одиночный цитаты. Вы можете сделать это вместо:
String query = "SELECT " + COL_0 + " FROM " + TABLE_NAME + " WHERE " + COL_5 + " = '" + note + "'";
, и это будет работать. Но рекомендуемый способ - передать параметры в виде строкового массива, например:
String query = "SELECT " + COL_0 + " FROM " + TABLE_NAME + " WHERE " + COL_5 + " = ?";
Cursor cursor = db.rawQuery(query, new String[] {note});
return cursor;
Таким образом, вы не будете беспокоиться о одинарных кавычках, поскольку об этом позаботится rawQuery()
. Я полагаю, вы хотите вернуть объект Cursor
, а не строку запроса sql, верно?