关于字符型前面补0的问题 ( 积分: 30 )

  • 主题发起人 主题发起人 小小豆豆龙
  • 开始时间 开始时间

小小豆豆龙

Unregistered / Unconfirmed
GUEST, unregistred user!
我在sql&nbsp;server里定义了一个varchar型的字段,在delphi里用adoquery取值时发现一个问题,情况如下:<br>id1:=adoquery1.fieldbyname('Fid').value;<br>原Fid字段中的值为0122659,可是取回的值却为122659,前面的0没了,有没什么办法解决该问题???
 
var<br>id1:string;<br>id1:=adoquery1.fieldbyname('Fid').asString<br>这么简单的问题也有人问&nbsp;呵呵
 
已测试过,不能解决该问题
 
数据库字段设成字符串不要设成数字的,哈哈
 
id1:='0000000'+adoquery1.fieldbyname('Fid').asString
 
id1:='0'+adoquery1.fieldbyname('Fid').asString
 
都检查过了,本来就是很简单的问题,但是就是出现这个奇怪的现象,我前面已经说了是varchar字段,人为补0是可以处理的,我只是奇怪今天为何突然出现这个情况。都检查过没发现低级错误,所以上来问问大家有没碰到这样的情况。
 
自己检查下吧!<br>看看在数据库中的时候有没有'0',如果没说明写入数据时就有问题了,如果有'0',那么,输出的时候没'0',肯定和SQL语句和FieldByName('Fid').As****有关,比如你在SQL语句中转换了类型等等
 
是不是你的数据集控件ADOQuery1中设置了相关字段的类型,但是设置是错误的?
 
adoquery1没设置,默认值
 
换台机测试没问题,邪门了
 
后退
顶部