Есть такая замечательная СУБД, называется
SQLite. В той версии скомпилированной dll, которую предлагают скачать с официального сайта имеются проблемы с case insensitive LIKE и ORDER BY для юникода:
Если запись в базе имеет значение поля содержит "ЦЦЦ", то при запросе с условием LIKE '%ццц%' эта запись не будет выведена, что бы ты ни делал, какие бы lower() и upper() ни применял. То же самое с ORDER BY: при сортировке по столбцу с русским содержимым результат будет примерно таким:
ААА
БББ
ЯЯЯ
ввв
ггг
яяя
Проблема решается компиляцией библиотеки с опцией
SQLITE_ENABLE_ICU. Эта опция подключает расширение
Internetional Components for Unicode, библиотеку которого нужно взять с соответствующего сайта и тоже, в свою очередь, скомпилировать.
Моя проблема состоит в том, что я не дружу с MSVS и Linux'ом и сколько бы усилий я ни прикладывал, мне ни разу не удалось собрать эту треклятую SQLite с ICU.
Самое значительное, что мне удалось нагуглить - это двухлетней давности
тема на sql.ru, где насмехаются над новичком в похожей ситуации и
вопрос на stackoverflow с объяснением для Linux'а. Ни та, ни другая ссылка, увы, мне не помогла.
Кроме того, есть уже собранные dll
здесь, но там SQLite 3.7.4, а хочется чего-нибудь посвежее.
Быть может, у кого есть в закромах SQLite 3.9+ с включенным ICU? Или кто-то может собрать ее и выложить? Или поделиться ссылкой на подробную инструкцию сборки для windows?
Спасибо за понимание