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

ользую Delphi 2009 с IBX для базы данных Firebird 3 (у меня нет выбора, чтобы выбрать другие технологии, я должен адаптироваться к ситуации). У меня есть следующие определения:

Поле BLOB Firebird определяется как:

BLOB SUB_TYPE 0 SEGMENT SIZE 80

TWideMemoField определяется как:

object MainQryNOTES: TWideMemoField
  FieldName = 'NOTES'
  Origin = 'INVOICES.NOTES'
  ProviderFlags = [pfInUpdate]
  BlobType = ftWideMemo
end

Строка теста называется «Цель по инфляции,%» и может считываться из поля BLOB в программном обеспечении IBExpert как:

26 04 35 04 3B 04 4C 04 20 00 3F 04 3E 04 20 00
38 04 3D 04 44 04 3B 04 4F 04 46 04 38 04 38 04
2C 00 20 00 25 00

Странно то, что Delphi инвертирует порядок байтов, например кириллический символ Ц имеет представление HEX UTF8 как 04 26, но он хранится в базе данных как 26 04, и аналогичная ситуация точно так же и с другими символами (это можно проверить с помощью таблицhttps://www.w3schools.com/charsets/ref_utf_basic_latin.asp а такжеhttps://www.w3schools.com/charsets/ref_utf_cyrillic.asp). В моем случае у меня только 2-байтовые символы, но я думаю, что аналогичная ситуация будет и с 3-х и 4-х байтовыми символами UTF8.

Итак, как я могу настроить TWideMemoField, чтобы он не преобразовывал порядок байтов строк UTF8?