У нас есть БД Firebird с большим количеством таблиц и данных. Который должен поддерживать как английский, так и китайский языки. При извлечении китайских данных из БД данные автоматически преобразуются в какой-то другой формат, подобный этому (примечание ‹).
На самом деле, мы изначально создали БД с набором символов NONE, а затем перерегистрировали ее в UTF-8 (для поддержки нескольких языков).
Строка подключения: $"ServerType=1;User=sysdba;Password=masterkey;Dialect=3;Database={FDBPath};client library=fbclient.dll;Charset=UTF8"
[Тип сервера: Встроенный]
Но он возвращает правильные данные при использовании приведенной ниже строки подключения:
$"ServerType=0;User=sysdba;Password=masterkey;Dialect=3;Database={FDBPath};"
[Тип сервера: Автономный]
После некоторых исследований мы узнали, что БД должна создаваться с помощью кодировки UTF-8. Но поскольку у нас большой объем данных, невозможно восстановить БД.
У нас есть обходной путь для декодирования полученных данных на китайский язык. Но это не правильное решение этой проблемы.
Итак, как получить обе языковые данные без проблем?