+ -
当前位置:首页 → 问答吧 → dbgrid中增加一列自增列

dbgrid中增加一列自增列

时间:2011-09-07

来源:互联网

已经得知 要在dbgrid中增加一列进过查询得到的内容代码是:
adoquery1.FieldByName('st_pro_id').DisplayLabel:='商品名称';
adoquery1.FieldByName('st_pro_id').DisplayWidth:=20;


那么,我现在需要在DBgrid中增加一列自增列,列名外行号,就是表示再查询的时候DBgrid中这个列显示的内容是1,2,3,4····这样的行号。


请教各位高手。


并且还有一列是名称为金额,内容是单价乘以数量,而单价和数量都是sQL查询得到的fieldbyname(‘’).asstring可得。这一列的代码又是怎么写?

作者: wojiaoyukai   发布时间: 2011-09-07

如果说项目大,可以自己做个小Demo测试一下就可以了

作者: rainychan2009   发布时间: 2011-09-07

实际上这些东西还是从sql查询语句上下功夫,给dbgrid增加列会有很多问题的,比如刷新,数据源更换,空数据处理等等
总之这几年的经验是,从sql语句下手会更简单,出错性低

作者: funxu   发布时间: 2011-09-07

几种常用的自动编号查询
http://hi.baidu.com/wenjunlin/blog/item/fd85c101258881dd277fb5cc.html

另外单价乘以数量就不用我写了吧,最基本的sql语句,Lz查下书即可

作者: funxu   发布时间: 2011-09-07

将查询命令改写为:

select 序号=identity(int,1,1), <字段1>,<字段2> ,...,[单价]*[数量] from <表名> ...

作者: zhoufs   发布时间: 2011-09-07

LS的童鞋 identity(int,1,1), 好像只能用在insertinto里吧

作者: funxu   发布时间: 2011-09-07

还有select into

作者: funxu   发布时间: 2011-09-07

大家理解错楼主我的意思了,我的自增列并不是在SQL表中的,而是应用adoquery查询满足要求的列以后,再在DBgrid中显示出这些列的内容,并且在DBgrid显示的每一行前添加自增的行号列。
大家别误会。

作者: wojiaoyukai   发布时间: 2011-09-07

自增列不一定要在sql表中,LZ看这个帖子了么?
http://hi.baidu.com/wenjunlin/blog/item/fd85c101258881dd277fb5cc.html

作者: funxu   发布时间: 2011-09-07

热门下载

更多