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

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

У меня есть таблица с одним столбцом типа nchar (20) и двумя строками : '123' и 'Test'.

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

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

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

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

Что можно сделать, чтобы этого не случилось?

7
задан marc_s 7 August 2010 в 06:58
поделиться

3 ответа

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

18
ответ дан 6 December 2019 в 08:41
поделиться

вам понадобится nvarchar , он гибкий.

1
ответ дан 6 December 2019 в 08:41
поделиться

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

См. nchar и nvarchar .

2
ответ дан 6 December 2019 в 08:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: