ser_davkin, похоже, эта pragma не работает для русских букв.
Этот топик читают: Гость
Ответов: 5446
Рейтинг: 323
|
|||
карма: 1 |
|
Ответов: 1536
Рейтинг: 176
|
|||
Я тут возложил на SQL большие надежды, а она оказывается дырявая. Как её заточить под кирилицу?
|
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
ser_davkin писал(а): Я тут возложил на SQL большие надежды, а она оказывается дырявая.ser_davkin, 1. Только БД созданная и эксплуатируемая со штатной (HiAsm) dll понимают локальный (русский) язык. 2. Все последующие версии и obj работают "только" с UTF-8 и забили на "чистые" локальные языки. 3. Будешь писать (и читать) в БД в UTF-8 - все проблемы с LIKE исчезнут. |
|||
карма: 25 |
|
Ответов: 1536
Рейтинг: 176
|
|||
Получается, если я той же PRAGMA, изначально (сразу) переведу базу в UTF - 8, смогу, наконец, пользоваться командой PRAGMA case_sensitive_like = boolean; (False, True). Да!
|
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Выбот кодировки производится при СОЗДАНИИ БД.
Уже созданую БД никакая прагма не изменит. Если создаётся БД с новыми версиями или с obj, то она уже UTF-8 |
|||
карма: 25 |
|
Ответов: 1536
Рейтинг: 176
|
|||
Tad писал(а): Если создаётся БД с новыми версиями или с obj, то она уже UTF-8Вот установил opt_sqlite3_7_2.dll, как буд-то новая версия, но тоже, с кирилицей не работает. ------------ Дoбавленo в 13.44: Установил sqlitedll-3_7_3, с кирилицей не работает ------------ Дoбавленo в 13.50: Tad, посмотри мой последний пример (схема), может найдёшь, как, что исправить,а то я уже не знаю, как выполнить этот функционал? |
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
ser_davkin писал(а): Вот установил opt_sqlite3_7_2.dll, как буд-то новая версия, но тоже, с кирилицей не работает.------------ Дoбавленo в 13.44: Установил sqlitedll-3_7_3, с кирилицей не работает ------------ Дoбавленo в 13.50: Tad, посмотри мой последний пример (схема), может найдёшь, как, что исправить,а то я уже не знаю, как выполнить этот функционал? Данные в базе должны быть записаны в кодировке UTF8. Для записи в базу предварительно нужно данные перекодировать компонентом Charset из вкладки Строки из ANSI_UTF8. Для выборки по запросу: сам запрос перекодировать из ANSI-UTF8 и вывести результат перекодировав UTF8_ANSI |
|||
карма: 0 |
| ||
Голосовали: | ser_davkin |
Ответов: 1536
Рейтинг: 176
|
|||
Alexbootch, спасибо, буду пробывать, а я уже придумал как костыли вкручивать, но пока отложу.
|
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
ser_davkin писал(а): Alexbootch, спасибо, буду пробывать, а я уже придумал как костыли вкручивать, но пока отложуser_davkin, да ты не торопись, т.к. PRAGMA case_sensitive_like с русскими буквами работать не будет. Бери собранную мной библиотеку с ICU, там все будет работать хоть для русского, хоть для иврита и любого другого языка, поддерживаемого библиотеками ICU |
|||
карма: 0 |
| ||
Голосовали: | ser_davkin |
Ответов: 1536
Рейтинг: 176
|
|||
Alexbootch, установил я твою библиотеку. Посмотри сам, отключить чувствительность к регистру, всё равно, не удаётся.
Упс , забыл удалить нафиг эту прагму. Завтра ещё плюс поставлю. |
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
ser_davkin, не как успехи?
ser_davkin, писал(а): Не знаю как сформировать SQL запрос на множественный поиск в этом столбце. Например, есть строка, которая в столбце text имеет длинное описание чего либо. Я формирую поиск "Пестики, тычинки, пыльца" и программа начинает поиск. Если в столбце есть совпадение на все эти слова, то программа запоминает данную стоку.FTS3 смотрел? |
|||
карма: 0 |
|
Ответов: 1536
Рейтинг: 176
|
|||
Alexbootch, мне нравится, работает весьма стабильно в отличии от sqlite3.dll, которая идёт с HiAsm, есть только один минус - кодировка UTF8, она увеличивает базу в двое. Если бы не функционал поиска с кирилицей, думаю кодировка UTF8 была бы не нужна.
Alexbootch писал(а): FTS3 смотрел? |
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
ser_davkin писал(а): Смотрел, но в английском, увы не силён.ser_davkin, воспользуйся переводчиком Вот простой примерчик:
|
|||
карма: 0 |
|
Ответов: 1536
Рейтинг: 176
|
|||
Я так понимаю, синтаксис PRIMARY KEY AUTOINCREMENT в твоей библиотеке несколько иной. Как создать таблицу с ним и что вписивать в строку INSERT INTO?
|
|||
карма: 1 |
|
Ответов: 1891
Рейтинг: 110
|
|||
ser_davkin писал(а): Я так понимаю, синтаксис PRIMARY KEY AUTOINCREMENT в твоей библиотеке несколько иной. Как создать таблицу с ним и что вписивать в строку INSERT INTO?Весь синтаксис точно такой же как и в стандартной библиотеке, добавлена лишь поддержка ICU и изменены некоторые опции компиляции |
|||
карма: 0 |
|