with AdoQuery1 do
    begin
        Close;
        SQL.Text := 'select distinct value from cardxx';
        Open;
        Combox1.Items.Clear;
        while not eof do
        begin
            Combox1.Items.Add(Fields[0].Asstring);
            Next;
        end;
    end;以上的这段程序,在win2000下,combox内容如下
30
50
这个结果是正确的,但是在win98下确是这样
30
30
30
30
50
50
也就是说在98下distinct 根本就没起作用,
开发环境
win2000sp4 + delphi6sp2 + Oracle8.1.7

解决方案 »

  1.   

    应该不管OS的事吧with AdoQuery1 do
        begin
            Close;
            SQL.Clear;
            SQL.Add( 'select distinct value from cardxx');
            Open;
            Combox1.Items.Clear;
            while not eof do
            begin
                Combox1.Items.Add(FieldByName('value').AsString);
                Next;
            end;
        end;没碰到这种事~~
      

  2.   

    Ado驱动问题?
    更新了MDAC没有?
      

  3.   

    问题解决了,更新了mdac就行了