Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104

Проблема с кодировки

04.02.2024, 10:36. Показов 1227. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Помогите пожалуйста очень прощу.
При добавлений записи в таблицу вместо казахских букв отображается вопросительный знак. Таблица в Mysql. Подключаюсь к базе через fdconnection. Запись добавляю через fdquery.
Вот такой код использую для добавление записи:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if Assigned(GlavFrm) then
    begin
      GlavFrm.FDQuery1.SQL.Text := 'INSERT INTO Malimet (tabel, name, birthday, citizenship, nationality, gender, military_rank, photo, password) VALUES (:tabel, :name, :birthday, :citizenship, :nationality, :gender, :military_rank, :photo, :password)';
      GlavFrm.FDQuery1.ParamByName('tabel').AsString := Edit1.Text;
      GlavFrm.FDQuery1.ParamByName('name').AsString := UTF8Encode(Edit2.Text);
      GlavFrm.FDQuery1.ParamByName('birthday').Value := DateTimePicker1.Date;
      GlavFrm.FDQuery1.ParamByName('citizenship').AsString := ComboBox1.Text;
      GlavFrm.FDQuery1.ParamByName('nationality').AsString := ComboBox2.Text;
      GlavFrm.FDQuery1.ParamByName('gender').AsString := ComboBox3.Text;
      GlavFrm.FDQuery1.ParamByName('military_rank').AsString := ComboBox4.Text;
      GlavFrm.FDQuery1.ParamByName('photo').AsString := label8.Caption;
      GlavFrm.FDQuery1.ParamByName('password').AsString := Edit3.Text;
 
      GlavFrm.FDQuery1.ExecSQL;
    end;
При созданий формы установливаю кодировку:
Delphi
1
2
3
4
5
6
GlavFrm.FDQuery1.SQL.Clear;
  // Выполняем запрос для выборки данных
        GlavFrm.FDConnection1.Connected := True; // Подключаемся к базе данных
        GlavFrm.FDConnection1.Params.Values['CharacterSet'] := 'utf8';
        GlavFrm.FDQuery1.SQL.Text := 'SELECT * FROM malimet';
        GlavFrm.FDQuery1.Open;
Миниатюры
Проблема с кодировки  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.02.2024, 10:36
Ответы с готовыми решениями:

Проблема кодировки
есть строка вроде "ПGJYЩЪ", то есть намешаны английские и русские буквы,а они имеют в байтах разную длину. charAt и subString работают...

Проблема кодировки
Доброго время суток. Поставил phpMyAdmin и создал бд для регистрации. Проблема была в кодировке только. Погуглил и нашел как поменять...

Проблема кодировки
столкнулся с такой проблемой запросили у меня небольшое консольное приложения для повторения слов корейского языка написать ...

13
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104
04.02.2024, 13:36  [ТС]
Никто не знает?
0
 Аватар для Beltar
819 / 434 / 38
Регистрация: 05.05.2022
Сообщений: 2,984
04.02.2024, 14:38
Почитать книги по юникоду. Возможно, поможет явное указание кодировки.
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,658
Записей в блоге: 21
04.02.2024, 15:02
в базе точно юникод ?
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104
04.02.2024, 16:42  [ТС]
Цитата Сообщение от Beltar Посмотреть сообщение
Почитать книги по юникоду. Возможно, поможет явное указание кодировки.
Тоже не помогаеть

Добавлено через 56 секунд
Цитата Сообщение от krapotkin Посмотреть сообщение
в базе точно юникод ?
База с таблицами тоже utf8_general_ci
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,658
Записей в блоге: 21
04.02.2024, 17:15
а почему в коде
UTF8Encode(Edit2.Text);
??
предполагается что в Edit и так юникод же
какая версия Delphi ?
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104
04.02.2024, 17:17  [ТС]
Цитата Сообщение от krapotkin Посмотреть сообщение
UTF8Encode(Edit2.Text);
Просто пробовал может заработает думал. Версия Делфи 10.3
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,658
Записей в блоге: 21
04.02.2024, 17:21
я не специалист в MySQL но
Цитата Сообщение от Abikon Посмотреть сообщение
utf8_general_ci
это вроде не совсем то, это метод сортировки символов
Миниатюры
Проблема с кодировки  
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,658
Записей в блоге: 21
04.02.2024, 17:22
ну и существует вероятность обратного, что текст уже заведен в базу в неверной кодировке
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104
04.02.2024, 17:34  [ТС]
Думаю проблема не базу. А в делфи. Потому что несколько дней назад сделал для изучения небольшуб программу. Там все отлично работает. Сейчас пробовал написать данные для той базы, там уже тоже вопросительные знаки вместо казахскую букву. А в той программе который делал все работает. Уже 4 раз новый создаю но все равно такая проблем. Не знаю что дальше сделать. Может переустановить делфи?
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,658
Записей в блоге: 21
04.02.2024, 17:39
делфи вообще ни при чем. это язык программирования. ему вообще все равно, с сервером вы работаете или из интернета качаете
взаимоотношения с базой идут полностью через компоненты доступа и SQL
нужно проверять именно параметры подключения
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104
04.02.2024, 18:29  [ТС]
В параметрах подклбчение указываю только имя БД, пользовает, пароль и сервер. Кодировку тоже пробовал указать, но не помогло.
0
 Аватар для krapotkin
6847 / 4674 / 1463
Регистрация: 14.04.2014
Сообщений: 20,658
Записей в блоге: 21
04.02.2024, 19:52
тогда нужно подождать кого-то с сервером MySQL
0
0 / 0 / 0
Регистрация: 03.02.2013
Сообщений: 104
09.02.2024, 12:39  [ТС]
ShowMessage('Текущая кодовая страница: ' + IntToStr(System.DefaultSystemCodePage)); показывает 1251
System.SetMultiByteConversionCodePage(65 001); Потом пробовал установить utf-8, тогда вместо букв какие кракозябры появилось.

И еще если записать данные из dbgrid тогда все буквы нормально отображается. А если добавить из edit-ов и combobox-ов тогда вместо казахских букв вопросительный знак. В чем может быть пробема?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.02.2024, 12:39
Помогаю со студенческими работами здесь

Проблема Кодировки
Здравствуйте. У меня возникла проблема при получении результатов выполнения системных команд. Как я понимаю проблема в кодировке... Хотя...

Проблема кодировки!
Здравствуйте! Вот по какому поводу прошу помощи... Пишу программку связанную с передачей данных на сервер, но если ник человека на русском...

Проблема с сменой кодировки
Такая вот проблема : Русифицировал дату на сайте и сохранил документ в utf-8... Из-за этого сайт не правильно отображается ( см. рис 1 ),...

Проблема кодировки страницы
Добрый день! Осваиваю Django. Пишу первый сайт в через Visual Studio. Возникла следующая проблема. НЕ могу ее решить. Подскажите,...

Проблема с сменой кодировки
Новая проблемка : Русифицировал дату на сайте и сохранил документ в utf-8. Теперь дата на русском , но сам сайт криво отображается, шапка...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru