将尾随空格插入SQL Server VARCHAR列

Sql*_*yan 7 sql t-sql sql-server string sql-server-2008

我正在尝试将尾随空格插入VARCHAR(50)列,并且SQL插入似乎正在将它们删除.这是我的代码:

create table #temp (field varchar(10));
insert into #temp select ' ';
select LEN(field) from #temp;
Run Code Online (Sandbox Code Playgroud)

不幸的是,这会返回零长度,这意味着''被插入为''.我需要为此专栏插入一个空白区域 - 任何想法?

OMG*_*ies 11

使用DATALENGTH,而不是LEN,因为LEN不处理空格.

取这个零长度的字符串,例如:

SELECT LEN(' ') AS len, 
       DATALENGTH(' ') AS datalength
Run Code Online (Sandbox Code Playgroud)

结果:

len   datalength
-----------------
0     1
Run Code Online (Sandbox Code Playgroud)

  • @Aamod Thakur:零长度字符串没有要尾随的字符;) (2认同)