procedure Tfrm_dept.PrepareData(Sender: TObject); var i :integer; begin query1.close; query1.sql.clear; query1.sql.Add('select dptid,dptname from dept order by dptname');//我改了这里 query1.open; query1.first; combobox1.items.clear; for i:=0 to 100 do dptid[i] :=0; i :=0; while not query1.eof do begin combobox1.items.add(query1.fieldbyname('dptname').asstring); dptid[i] :=query1.fieldbyname('dptid').asinteger; query1.next; i :=i+1; end;
排序可以在你的SQL语句后加入“order by 字段名”,一般系统是默认问升序的,要改为降序则还需在后面加上 “dec”。也可以按多个字段排序,只需将字段名用逗号隔开即可,排在前面的字段有高的优先级。
var i :integer;
begin
query1.close;
query1.sql.clear;
query1.sql.Add('select dptid,dptname from dept order by dptname');//我改了这里
query1.open; query1.first;
combobox1.items.clear;
for i:=0 to 100 do
dptid[i] :=0;
i :=0;
while not query1.eof do
begin
combobox1.items.add(query1.fieldbyname('dptname').asstring);
dptid[i] :=query1.fieldbyname('dptid').asinteger;
query1.next;
i :=i+1;
end;