Назад | Перейти на главную страницу

Как можно передать кодировку UTF 8 в поле varchar в поле nvarchar?

Символы UTF-8 (почти миллион записей) были импортированы в varchar (max) как западноевропейские. Есть ли какой-нибудь известный способ исправить это в SQL? Мы проверили, что отображаемые «мусорные» символы на самом деле основаны на неправильных символах в западноевропейской кодировке, представляющей шестнадцатеричные значения UTF-8. Казалось бы, лежащее в основе шестнадцатеричное число в поле varchar верное. В идеале мы хотели бы иметь возможность исправить это в SQL, а не повторно импортировать данные.

Вам нужно будет повторно импортировать данные прямо в столбец nvarchar.

Я видел только преобразования кодирования на стороне приложения, используемые для исправления описанного вами сценария (преобразование из формата UTF-8 в формат UTF16 или UCS2).