Гость
Форумы / Android [игнор отключен] [закрыт для гостей] / Поиск по тексту sqlite / 10 сообщений из 10, страница 1 из 1
18.09.2015, 10:24
    #39054750
Dmitry Sukhovilin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
Доброго дня,

Кто сталкивался с необходимостью делать поиск по колонке с русскими (unicode) символами используя LIKE ?
Запросы типа
Код: sql
1.
SELECT * FROM table_name WHERE LOWER(person_name) LIKE '%иван%';

не работают, т.е. LOWER и UPPER работают только с ASCII кодировкой и никак иначе. Делать отдельное поле для поиска не очень хочется, перебирать курсор в java коде работает медленно.
Наверняка многие сталкивались и решение есть.
Спасибо.
...
Рейтинг: 0 / 0
18.09.2015, 14:49
    #39055180
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
В соединении указываешь collation?

http://habrahabr.ru/post/150543/
...
Рейтинг: 0 / 0
21.09.2015, 17:17
    #39057636
Dmitry Sukhovilin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
wadman,

Я так понимаю тут речь идет о sqlite как встраиваемой базе, но ни как не про андроид.
...
Рейтинг: 0 / 0
21.09.2015, 17:19
    #39057640
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
версия дроида какая, если не ошибаюсь, в поледних уже не должно быть проблем с юникодом
...
Рейтинг: 0 / 0
21.09.2015, 17:21
    #39057643
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
Dmitry Sukhovilinwadman,

Я так понимаю тут речь идет о sqlite как встраиваемой базе, но ни как не про андроид.

да в общем то в целом эта проблема имела место быть в ведроиде.

если сильно нужно, там же на хабре была статья как можно было и для дроида решить проблему юзая нативные библы
...
Рейтинг: 0 / 0
21.09.2015, 19:22
    #39057739
Dmitry Sukhovilin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
Джибсверсия дроида какая, если не ошибаюсь, в поледних уже не должно быть проблем с юникодом
Проблем нет только в 6.0 API 23. Мне же нужно 4.0.3 API 15 и выше.
...
Рейтинг: 0 / 0
22.09.2015, 11:43
    #39058151
Dim666
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
Dmitry Sukhovilin,

Видимо проще всего действительно создавать отдельный столбец, в котором хранить джавовский toLowerCase (или toUpperCase) и поиск делать по нему...
Чехарда с кастомной либой sqlite что-то доверия не внушает. Кстати непонятно, почему никто такую готовую либу с обёрткой не залил в репозиторий (чтобы её можно было юзать добавлением одной строки в build.gradle).
...
Рейтинг: 0 / 0
23.09.2015, 12:36
    #39059332
Джибс
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
ну можешь и тут посмотреть

http://habrahabr.ru/post/122408/



но я бы, просто все держал нижнем регистре и не парился.

а там где нужно, можно и кодом, первую букву в верхний регистр перевести
...
Рейтинг: 0 / 0
25.09.2015, 12:15
    #39061131
Dmitry Sukhovilin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
Джибс,

Специфика хранимых строк не позволяет так сделать. Поступил проще. Задампил данные таблицы в память. Порядка 5000 строк. И далее уже в памяти делаю поиск. Работает быстрее чем запросы в базу.

Вызывает удивление, что в андроиде далеко не первой версии не реализован UTF-8 из коробки. Много лет продукту уже...
...
Рейтинг: 0 / 0
25.09.2015, 14:08
    #39061294
Dim666
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск по тексту sqlite
Dmitry SukhovilinВызывает удивление, что в андроиде далеко не первой версии не реализован UTF-8 из коробки. Много лет продукту уже...Пишут типа, что гугловцы так сэкономили на размере либы sqlite (не включая в неё таблицы символов для UTF-8).
Но что им дали эти сэкономленные пару-тройку мегабайт - неясно. Ведь в итоге каждое приложение, которое хочет уметь нормально искать по UTF-8, тащит с собой свою полную либу sqlite...
...
Рейтинг: 0 / 0
Форумы / Android [игнор отключен] [закрыт для гостей] / Поиск по тексту sqlite / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]