Пустое пространство в конце результатов запроса SQL Server

StackOverflow https://stackoverflow.com/questions/3428073

Вопрос

Я только что установил Microsoft SQL Server 2008 R2 для тестирования с Linq для SQL.

У меня есть таблица с одним столбцом типа NCHAR (20) и два ряда: «123» и «тест».

Если я запрашиваю все строки из этой таблицы и заверните каждое значение «», «Я получаю следующее:

'123 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' ( _ is a space)

'Test _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' ( _ is a space)

SQL Server, похоже, заполняет неиспользуемое место (потому что столбец - 20 байт NCHAR) с пробелами.

Что я могу сделать, чтобы предотвратить этому?

Это было полезно?

Решение

Используйте nvarchar вместо nchar. NCHAR - это поле фиксированной ширины, которое заполнено пробелами, как вы видите.

Другие советы

Изменить тип столбца в nvarchar.

Видеть nchar и nvarchar..

тебе нужно nvarchar, это гибко.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top