字段A原来是char(18),现在改为varchar(18)了,但新增数据后,取出来的还是固定长度18.
比如新增 '1001',取出来变成 '1001 '
求解释,varchar不是可变长度么?需要改什么默认规则?
我用的是SQL Server 2008 R2
------解决方案--------------------
取数据的时候,Trim下就行了...
------解决方案--------------------
更改字段类型后,对数据表更新一下:
UPDATE 表 SET A=RTRIM(A)
------解决方案--------------------
额,程序端还是char(18)导致的?
------解决方案--------------------
..
------解决方案--------------------
要清空原来里面的空格
------解决方案--------------------
char(N):如果数据不够长,会补齐。换成varchar(18)后需要去掉补齐的空格
------解决方案--------------------
取值是trim一下
------解决方案--------------------
转的时候,保留了后续空格
之后添加的,就不会了
------解决方案--------------------
貌似从来不用char的,都用nvarchar,一劳永逸
------解决方案--------------------
既然楼主解决了,那我只好占楼接分了。