Имею БД с русскими словами, они должны выводиться по порядку. В БД есть слова которые начинаются на буквы "ё" и "е". Проблема в том, что видимо sqlite считает, что это одна и та же буква и сортировка работает некорректно, например:
дамба
дистанция
егерь
еда
ёжик
ездок
енот
жабры
Для запроса слов использую такой код:
Cursor cursor = mDatabase.rawQuery("SELECT word FROM words ORDER BY word COLLATE LOCALIZED", null);
В DBHelper-е указываю локаль:
@Override
public void onConfigure(SQLiteDatabase db) {
super.onConfigure(db);
db.setLocale(new Locale("ru", "RU"));
}
Мне нужно, чтобы сортировка происходила согласно русскому алфавиту, т.е, слова начинающиеся с буквы "ё" должны быть после слов на букву "е", а не вперемешку. Как можно исправить сортировку?
Ответ
существует два варианта:
тащить за собой sqlite: http://habrahabr.ru/post/122408/
делать еще колонку с одинаковым регистром и искать/сортировать по ней.
ответ взят из комментария пользователя itvdonsk
Комментариев нет:
Отправить комментарий