【发布时间】:2012-03-01 23:29:58
【问题描述】:
如果我放在那里的东西不够长,我有一个表格,它会用空格填充我放在那里的行。
例如:
我有一个名为
'ABC'
但该列是nchar(10)
所以放在那里的值变成了
'ABC '
有谁知道问题出在哪里?
我正在使用 MSSQL。
【问题讨论】:
标签: sql-server sql-types
如果我放在那里的东西不够长,我有一个表格,它会用空格填充我放在那里的行。
例如:
我有一个名为
'ABC'
但该列是nchar(10)
所以放在那里的值变成了
'ABC '
有谁知道问题出在哪里?
我正在使用 MSSQL。
【问题讨论】:
标签: sql-server sql-types
nchar(10) 是一个固定长度的字符串。 nvarchar(10) 不是。
您可以将列定义更改为nvarchar(10)
【讨论】:
nchar 是一个固定宽度的数据类型,并且总是用空格填充到定义的列限制。你需要nvarchar(10) 来避免这种情况。
当列中的值都具有相同或非常相似的长度时,您通常应该只使用nchar 而不是nvarchar。
【讨论】: