sql資料庫裡有一個表,格式如下:
類型 類型號
Z
Z
X
R
X
Z
R
......
表單上有一個button,一個dbgrid顯示表,如何按下button實現對錶進行編號:
類型 類型號
Z 1
Z 2
X 1
R 1
X 2
Z 3
R 2
....
這樣的迴圈語句改怎麼寫啊?提示z有3個x有2個…
解決代碼:
procedure TForm1.Button1Click(Sender: TObject);
var
chr:string;
i:Integer;
begin
with ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add('alter table table1 add id int identity(1,1)');
ExecSQL;
Close;
SQL.Clear;
sql.Add('select 類型,id from table1 order by 類型 asc');
Open;
end;
chr := ADOQuery2.Fields[0].AsString;
i := 0;
while not ADOQuery2.Eof do
begin
if ADOQuery2.Fields[0].AsString = chr then Inc(i)
else
begin
chr := ADOQuery2.Fields[0].AsString;
i := 1;
end;
with ADOQuery3 do
begin
Close;
SQL.Clear;
SQL.Add('update table1 set 類型號=:v0 where id=:v1');
Parameters[0].Value := i;
Parameters[1].Value := ADOQuery2.Fields[1].AsInteger;
ExecSQL;
end;
ADOQuery2.Next;
end;
with ADOQuery2 do
begin
Close;
SQL.Clear;
SQL.Add('alter table table1 drop column id');
ExecSQL;
end;
end;