При создании моей базы данных SQLite в Android я устанавливаю локаль базы данных - db.setLocale(новый язык ( "cz_CZ" )). Это чешский язык.
Оператор SELECT работает и учитывает локаль, например:
SELECT * from table WHERE name='sctzy' COLLATE LOCALIZED
Найдет запись "ščťžý".
Но использование LIKE не будет выполнено:
SELECT * from table WHERE name LIKE '%sctzy%' COLLATE LOCALIZED
Никакая строка не возвращается.
BTW. В Android нет класса java.text.Normalized. Я думал, что могу сделать второй столбец с нормализованным текстом, лишенный специальных символов, который будет использоваться для поиска - но мне не хватает класса или способа нормализации строки.