Создание таблицы в SQLite с именами столбцов, которая содержит специальный символ #
.Escape специальный символ # в таблице условие условие
Не знаю, как избежать этого, чтобы SQLite распознал его.
Я нашел, что код выхода для #
: %23
. Так что я пытался сделать так:
condition = condition.replace("usernum#", "usernum%23");
где условием является SQLite условие типа строки, например, select * from users where id = '2' ORDER BY usernum#
Но выше способ дает SQLite исключение.
ЛОГ:
04-12 20:00:44.395: E/AndroidRuntime(8054): android.database.sqlite.SQLiteException: no such column: usernum (code 1): , while compiling: select * from Users WHERE id !=1 order by Type DESC, usernum%23 ASC
Ошибка в этой строке:
Cursor curr = db.rawQuery("select " + fields + " from " + table + " "+ condition, null);
какое исключение вы получаете? –
Я предполагаю, что вы используете rawQuery? (это usernum # столбец? серьезно?) – njzk2
О, да, я использую rawquery. См. Мое обновление. –