从数据库字段读出的内容为什么后面总有空格(100分)

  • 主题发起人 yanzhong
  • 开始时间
Y

yanzhong

Unregistered / Unconfirmed
GUEST, unregistred user!
我用的是SQL Server2000、delphi7,举例字段A长10字节,内容是“AB”,程序读出的内容总是AB后面再加上8个空格,不知为何。字段类型为varchar,我也不想用Trim,有仁兄说让ANSI_PADDING置为OFF就可以,怎么试都不行
 
你是怎么读出来的??

代码拿来看看!
 
Query1.FieldByName('Name').AsString
 
你怎么看出来他多了8个空格的?
 
读到Edit.Text里,选择后就可看到
 
VarChar应该不会有这样的问题吧,是不是搞错了好像Char类型才有这的特性哦。
 
那是因为SQL Server里字段的类型是char,不是varchar
char是固定长度的,不足用空格填充。
varchar是可变长度。
 
"那是因为SQL Server里字段的类型是char,不是varchar",看看我的问题后面已经说了[:)]
 
字段设成varchar型就行了
 
真如你所说,空格肯定是载你保存的时候就有了,检查一下你的程序吧
 
如果不行 还是用一下trim 也不麻烦
 
你数据库里面的数据是直接添加的还是通过程序写进去的??

会不会是你程序里面添加语句有什么问题??
 
估计你原来设置的是char类型,然后中途把他改成了varchar类型,这样表中以前的记录是还会保留空格的,但新添加的就不会了,
可以一次性在查询分析器中执行 update 表1 set Col1=Rtrim(Col1),然后就不会有问题了
 
那是因为SQL Server里字段的类型是char,不是varchar
char是固定长度的,不足用空格填充。
varchar是可变长度。
 
是的,谢谢了,以前的数据没给做RTrim
 
顶部