不会自动补,查一下看哪些有空格 select * from [Table] where len([Field])>len(rtrim([Field]))
如果你的数据库确实是VARCHAR 的话 那就是你前端程序的问题VARCHAR 自动截断后便的空格的create table #t(n varchar(100))insert into #t values('a ')insert into #t values(' a')select n,[len]=len(n) from #t n len -- ---- a 1 a 6 (2 行受影响)
LZ有怀疑,可以自己做一次测试即可明白、
-----------------------LZ是怎么发现后面有空格的? 是实际打印出来看到的字段长度和实际的字符数不符吗?用LEN()函数好好看看是不是真的加了空格另外在传参数的时候有没有用char类型存放过数据
大部分是没有的,正常的.....
在某些情况下,导出的数据可能会出现此问题
应该是在程序中输入的时候。有的有空格,程序中没有去掉吧。。
而且varchar类型也不会补空格的噢
select * from [Table] where len([Field])>len(rtrim([Field]))
如果你的数据库确实是VARCHAR 的话 那就是你前端程序的问题VARCHAR 自动截断后便的空格的create table #t(n varchar(100))insert into #t values('a ')insert into #t values(' a')select n,[len]=len(n) from #t
n len
-- ----
a 1
a 6
(2 行受影响)