Delphi. MySQL. Ошибка Type mismatch for field ‘name’, expecting: String actual: WideString

Пока не понял природу этой ошибки, но решил зафиксировать, мало ли кому понадобится.

Такая ошибка появилась у меня в результате работы с базой MySQL с кодировкой UTF8 и FDConnection, также с кодировкой UTF8, но передаваемым не напрямую, а через другой модуль. У меня была проблема с тем, что кириллица не отображалась корректно в FDTable и мне пришлось искать решение какое-то время.

Решение №1

В ручную создать новые поля типа WideString в FDTable или FDQuery (смотря с чем работаете) взамен тех, у которых тип String. Например так

13

 

14

После того как я в ручную создал эти поля и удалил те, которые String – все стало как нужно.

ПолуРешение №2 (оно только очистит поля)

Но в этом случае придется пересоздавать поля

This entry was posted in Delphi. Bookmark the permalink.