用下面的方法试试看:
用一个QUERY组件,程序如下:
1.设置QUERY1组件的sql属性为:SELECT * FROM text.dbf ORDER 字段DESC
2.打开QUERY1组件的字段编辑器.添加所有的字段,并新建一个计算字段.
字段名就取order.字段类型为Integer.
3.在QUERY1的CALCULATE事件中写入如下程序.
query1order.value := query1.recno;
4.在DBGRID中显示即可。
5.程序如下:
with query1 do
begin
Open; //执行query1中的查询语句.
First; //指向第一条记录
query1.edit; //把数据集设为编辑状态.
while not eof do
begin
FieldByName('名次').AsInteger := FieldByName('query1order').AsInteger;
Next;
end; //end while
Post; //把更新的数据写回数据库
end; //end with