如何在adoQuery中增加一个计算字段,来显示查询出的记录的排序的号?记录一显示1,记录二显示2....
表中的记录原来是以一个时间字段(设为了关键字段,或是用order by排)来排序的,按时间的从老到新排,这个计算字段的功能就是表示出这个序号,用1.2.3.4....来表示记录的序号。它的计算逻辑应该是怎么样写的呢? 问题点数:30、回复次数:6Top
1 楼chechy(www.qdocuments.net)回复于 2001-08-21 09:59:42 得分 30
DataSet['YourCalField'] := DataSet.RecNo;Top
2 楼sunhuiNO1(2B)回复于 2001-08-21 10:02:16 得分 0
直接用ACCESS做啊,他的字段有这类的自动字段啊Top
3 楼chenjiong(准程序员:升级中....)回复于 2001-08-21 10:09:41 得分 0
ACCESS中的是固定字段吧,而且它的值并不会随着记录在表中的位置而动态改变。我用的就是ACCESS,请问是如何做的?
Top
4 楼chenjiong(准程序员:升级中....)回复于 2001-08-21 10:34:23 得分 0
好象不对吧,我一开始用:
adoquery1.Edit;
adoquery1['序号']:=adoquery1.RecNO;
这样子只有第一行显示为“1”,其它记录行为空。后来我用:procedure TForm1.ADOQuery1AfterOpen(DataSet: TDataSet);
var
i:integer;
begin
adoquery1.Edit;
for i:=0 to adoquery1.fieldcount -1 do
adoquery1['序号']:=adoquery1.RecNO;
end;
结果全都为“0”了,这是什么原因啊?
Top
5 楼chechy(www.qdocuments.net)回复于 2001-08-21 10:54:44 得分 0
既然是计算字段,就应该在DataSet的OnCalFields事件中写上述代码。
DataSet['YourCalField'] := DataSet.RecNo;
Top
6 楼chenjiong(准程序员:升级中....)回复于 2001-08-21 11:01:30 得分 0
不好意思,呵呵,I 真是笨!Top





