Некорректное отображение строковых данных в SQL Managment Studio

Рейтинг: 0Ответов: 1Опубликовано: 03.05.2023

В таблице есть данные с типом Binary, но я знаю, что закодированы там строки. Я конвертирую эти данные в NVARCHAR, но на выходе получаю китайские иероглифы. Подскажите пожалуйста в чем может быть проблема? Пример запроса:

SELECT CONVERT(NVARCHAR(100),field) FROM Table tb

Ответы

▲ 0

Попробуйте поиграться с типами данных. Напишите для своего заприоса примерно следующие прообразования:

SELECT *,
  CAST(my_varchar AS VARCHAR(100)) v_to_v,
  CAST(my_varchar AS NVARCHAR(100)) v_to_nv,
  CAST(my_nvarchar AS VARCHAR(100)) nv_to_v,
  CAST(my_nvarchar AS NVARCHAR(100)) nv_to_nv
FROM (
  SELECT
    CAST('мой VARCHAR' AS VARBINARY(50)) as my_varchar,
    CAST(N'мой NVARCHAR' AS VARBINARY(50)) as my_nvarchar 
) T

У меня под рукой студии нет, но по результату я думаю вы всё поймёте :)

С коллацией возможно ещё стоит поиграться, но это надо конкретный пример binary и результат запроса SELECT @@VERSION, точнее сказать трудно.