Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
2 / 2 / 1
Регистрация: 23.03.2015
Сообщений: 78

Настроить кодировку в mariadb 10.1 для работы приложением на Delphi

15.02.2019, 12:24. Показов 2804. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Стоит задача подружить программу на delphi c базой данных mariadb 10.1.34 на сервере ubuntu 18.04.1.
База поднимается с нуля, можно вертеть как угодно.
Программа пишется на delphi xe8 с использованием компонента zeosDBO 7.2.4.

Проблема в несовместимости кодировок, русские буквы, вытягиваемые из базы, показываются в винде виде знаков вопроса.
Пытаюсь решить переводом БД на виндовую кодировку cp1251.
В конфигах марии прописал такие настройки:

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
[client]
...
default-character-set=cp1251
...
[mysql]
...
default-character-set=cp1251
...
[mysqld]
...
collation-server = cp1251_general_ci
init-connect='SET NAMES cp1251'
character-set-server = cp1251
Приложение пишет и извлекает из базы вместо русских буков одни вопросительные знаки.

Помогите перевести машу на виндовую кодировку или найти правильный подход к интеграции двух сущностей!
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.02.2019, 12:24
Ответы с готовыми решениями:

Настроить кодировку cp1251 в mariadb 10.1
Добрый день. Стоит задача подружить программу на delphi c базой данных mariadb 10.1.34 на сервере ubuntu 18.04.1. База поднимается с...

Как настроить кодировку для Windows
Но на этот раз уже не просто вывод в консоль. Создание и чтение файлов, которые могут быть с равной вероятностью на кириллице, содержать...

Как настроить кодировку для корректного чтения кириллицы
как писать по русский в qt? пробую так,но не выходит ui->pushButton->setText(QObject::tr("Пос\nчи\nта\nть")); main #include...

6
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,671
Записей в блоге: 21
15.02.2019, 20:44
вопрос с кодировками в 21 веке вроде закрылся
UTF=8 и никаких проблем не возникает нигде

только нужно указывать это и при создании базы и при подключении к ней
FireDac принципиально не рассматриваете?
0
2 / 2 / 1
Регистрация: 23.03.2015
Сообщений: 78
16.02.2019, 12:17  [ТС]
krapotkin, осталось только объяснить это виндам. Ну или каждый запрос в делфях транслировать из ansi в utf8 и обратно.
Хотелось бы подружить их без этого презерватива.
0
Модератор
 Аватар для D1973
9924 / 6460 / 2457
Регистрация: 21.01.2014
Сообщений: 27,410
Записей в блоге: 3
16.02.2019, 14:30
Цитата Сообщение от bonanza Посмотреть сообщение
Программа пишется на delphi xe8
Любая RAD Studio прекрасно понимает Unicode... Но если Вы в коде используете какие-нибудь Ansi... - это уже Ваша головная боль...
Цитата Сообщение от krapotkin Посмотреть сообщение
FireDac принципиально не рассматриваете?
Повторю вопрос...
0
 Аватар для krapotkin
6849 / 4676 / 1464
Регистрация: 14.04.2014
Сообщений: 20,671
Записей в блоге: 21
16.02.2019, 20:40
Лучший ответ Сообщение было отмечено bonanza как решение

Решение

Цитата Сообщение от bonanza Посмотреть сообщение
каждый запрос в делфях транслировать
если у вас данные в одном формате, а читать вы их хотите в другом - вроде как это ваша собственная боль
у всех нормально любые сервера работают с UTF8 безо всяких прокладок
любой компонент со времен Delphi 7 содержит еще и настройки чарсета для коннекта...
кладем данные в UTF8 при подключении указываем кодировку UTF8 и гоняем туда-обратно совершенно без забот
именно поэтому мы немного не понимаем суть вашей проблемы...
1
2 / 2 / 1
Регистрация: 23.03.2015
Сообщений: 78
17.02.2019, 14:07  [ТС]
krapotkin, а вот за эту мысль спасибо, буду раскуривать свой компонент для коннекта...
0
2 / 2 / 1
Регистрация: 23.03.2015
Сообщений: 78
18.02.2019, 05:08  [ТС]
Всем спасибо, внимательное курение свойств компонента zConnection показало наличие ClientCodepage. Значение utf8mb4, родное для машиДБ, решило эту проблему.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.02.2019, 05:08
Помогаю со студенческими работами здесь

MySQL для работы с android-приложением
Добрый вечер! Может я задам глупый вопрос или повторюсь, но уж простите, в этом деле новичок и нужна ваша помощь. Скажите, в какой среде...

Утилита для работы с запущенным оконным приложением
Мне нужно написать программу – утилиту, как мне реализовать вывод данных в окно другого приложение, данные текстовые, нужно сделать что-то...

Использование сторонних программ для работы с консольным приложением
Доброго времени суток! Начал знакомство с C# и тренируюсь на консольных приложениях. Работаю в MacOS, при компиляции программы, запускается...

Для работы MySQL требуется библиотека. Как распространять ее с приложением?
Я не знал, как назвать тему, поэтому назвал так :) Я создал проект, подключил туда MySql.Data предварительно скачав и установив MySQL...

переезд с lightt + mariadb 5.x на nginx + php-fpm + mariadb
Доброго времени суток, коллеги. Имею такую проблему: Ранее был lighttpd на centos 7.X, всё работало корректно. Сейчас...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru