数据表ecsms_iso中有记录(ctnsize,ctntype为组合主键):ctnsize  ctntyp oldiso  newiso
------------------------------
20         FR
20         HR
40         FR
53         HR
53         TR执行语句:
with ADODataset1 do
begin
 close;
 commandtext:='select distinct ctnsize from ecsms_iso';
 open;
end;for i:=0 to ADODataset1.RecordCount-1 do
  begin
   temp:=ADODataset.Fields.Fields[0].AsString;
   CtnSizeEdit.Items.Add(temp);
  end;结果下拉框CtnSizeEdit中出现的是20 20 20,
而不是20 40 53!!!奇怪!!

解决方案 »

  1.   

    wk,老兄你专业一点儿好不好!将记录集指针移动到下一条好不好!!!我faint
      

  2.   

    for i:=0 to ADODataset1.RecordCount-1 do
      begin
       temp:=ADODataset.Fields.Fields[0].AsString;
       ADODataset1.next;
       CtnSizeEdit.Items.Add(temp);
      end;
    please try?I don't know weather ADODataset1 has function next;
      

  3.   

    楼上的老兄回答太对了
    ADODataset1.Next; for循环里面
      

  4.   

    惭愧!多谢raloon(小东) 提醒!
      

  5.   

    with ADODataset1 do
    begin
     close;
     commandtext:='select distinct ctnsize from ecsms_iso';
     open;
    end;for i:=0 to ADODataset1.RecordCount-1 do
      begin
       temp:=ADODataset.Fields.Fields[0].AsString;
       CtnSizeEdit.Items.Add(temp);
      adodataset1.next;//这个不写不出错才怪呢
      end;