Проблемы с диакритическими знаками при вставке в localdb

У меня проблема с моим приложением C# Winforms. У меня есть форма для ввода данных, которая преобразуется в объект, а затем используется для вставки данных в локальную базу данных. Моя проблема с некоторыми венгерскими буквами. У нас есть несколько символов с диакритическими знаками, например á, é, ő, ü и т. д. Моя проблема возникает в момент вставки в базу данных. SQL-запрос (INSERT INTO) работает нормально. Однако, если во вставляемой строке есть символ 'Ő' или 'Ű' (или строчная буква 'ő' или 'ű'), они преобразуются в их версию без ударения (ő -> o; ű - › у). Другие буквы с акцентом (например, «á») работают нормально.

После некоторой отладки я могу точно сказать, что символы в порядке, пока не дойдет до SQL-запроса, поэтому мой член класса (Customer.name) имеет их правильно, но они вставляются в базу данных неправильно. Странно то, что если я ввожу правильную букву в базу напрямую (имею в виду ввод ее в базу без SQL-запроса), то она остается там без ошибки, а также корректно отображается в приложении при использовании селекта запрос.

Я думаю, что моя проблема связана с кодировкой базы данных, но я не знаю, как ее изменить, и что именно может вызвать такие проблемы с этими 2 (или 4) символами.

Заранее спасибо!


person MasterPG    schedule 03.09.2020    source источник
comment
Воспроизводится ли проблема, если вы удаляете свое приложение из процесса (т. е. выполняете вставку из SSMS)? Можете ли вы предоставить минимальное воспроизведение (простая таблица, один столбец, строка) и показать таблицу DDL, сопоставление SQL и то, как вы выполняете вставку из своего кода?   -  person Flydog57    schedule 03.09.2020
comment
Спасибо за помощь! Я смог установить сортировку на венгерский, что решило мою проблему.   -  person MasterPG    schedule 04.09.2020