Перейти к содержанию
Fire Monkey от А до Я
  • 0

SQLite Mac OS, Кодировка


AndreyS

Вопрос

Доброго всем дня! У меня в  самый неподходящий момент возникла следующая проблема:

 

Есть приложение для Win и Mac. Работает с SQLite (Через FDQuery).

Естественно, в базе куча данных с кириллицей. Так вот, на Win - все нормально, на одном Mac(10.10) - тоже все хорошо. Попробовал поставить на второй Mac(10.9.5) - b и вот там уже начались проблемы с кодировкой. Причем, читает из таблицы 

S := Query.FieldByName('Title').AsString; //Без проблем

а вот при записи в таблицу

Query.ParamByName('Title').AsString := 'Заголовок';

В таблицу записывается '????????' (Причем именно запись идет неправильно). При подключении к базе Указываю, что StringFormat=Unicode.

 

Может кто-то сталкивался с таким уже?

 

Есть подозрения, что на 10.9.5 какая-то старая dylib, которая неправильно работает с кириллицей. тогда, наверное, нужно подключать свою к приложению, но опять же, где ее взять и как подключить? 

Ссылка на комментарий

Рекомендуемые сообщения

  • 0

Не работаю с FDQuery (использую компоненты от  devart), поэтому мой вопрос/ответ может быть не корректным. Я так понимаю вы используете внешнюю библиотеку для sqlite. Возьмите (найдите) ее в компе (что там вроде sqlite*.dylib) в котором все ок (мак) и киньте ее в другой. Вроде бы там можно использовать встроенный механизм доступа к SQlite? Если, да, по попробуйте его.

Ссылка на комментарий
  • 0

Там есть режим (я его использую), который позволяет напрямую соединиться, без библиотек (dll, dylib). И работает шифрование БД. И после его включения, вашу БД нельзя открыть ничем, кроме вашего приложения.

Изменено пользователем Vitaldj
Ссылка на комментарий
  • 0

 

Vitaldj, а с девартовскими компонентами никогда не возникало проблем с кодировкой?

Да как то не припомню)).

 

в деварте(и скорее всего везде) на мобилах AsString лучше забыть навсегда...только aswidestring, иначе крякозябры

Ссылка на комментарий
  • 0

В общем попробовал разные варианты:

1. Менял кодировку самой базы данных - не помогло.

2. Пробовал использовать девартоские компоненты - строки в кириллице ни читаются, ни пишутся.

3. Помогло только .AsWideString. Теперь вроде везде нормально читается и пишется.

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...