procedure TForm1.Button1Click(Sender: TObject);var
aNameList : TStringList;
sName : String;
begin
aNameList := TStringList.Create;
try
with adoTable1 do
begin
first;
repeat
sName := FieldByName('单位名称').asString;
if aNameList.IndexOf(sName) = -1 then
begin
aNameList.Add(sName);
Next;
end else
begin
Delete;
end;
Until eof ;
end;
finally
aNameList.Free;
end;end;end.
DLEPHI说键列信息不足,更新影响过多的行。
aNameList : TStringList;
sName : String;
begin
aNameList := TStringList.Create;
try
with adoTable1 do
begin
first;
repeat
sName := FieldByName('单位名称').asString;
if aNameList.IndexOf(sName) = -1 then
begin
aNameList.Add(sName);
Next;
end else
begin
Delete;
end;
Until eof ;
end;
finally
aNameList.Free;
end;end;end.
DLEPHI说键列信息不足,更新影响过多的行。
procedure TForm1.Button1Click(Sender: TObject);var
aNameList : TStringList;
sName : String;
begin
aNameList := TStringList.Create;
try
with adoTable1 do
begin
first;
repeat
sName := FieldByName('单位名称').asString;
if aNameList.IndexOf(sName) = -1 then
begin
aNameList.Add(sName);
Next;
end else
begin
Delete;
next;//这里加入这个
end;
Until eof ;
end;
finally
aNameList.Free;
end;end;end.
楼上说的对
打开表的语句改成
select 单位名称 from 表名 order by 单位名称
下面代码改成
var
aNameList : TStringList;
begin
aNameList := TStringList.Create;
try
with adoTable1 do
begin
first;
repeat
aNameList.Add(FieldByName('单位名称').asString)
Next;
Until eof ;
end;
finally
aNameList.Free;
end;
end;end.